1
0
forked from Tank/braga
This commit is contained in:
Татьяна Фарбер 2026-03-08 15:29:51 +04:00
commit d4f9740eb7
105 changed files with 24130 additions and 0 deletions

93
README.md Normal file
View File

@ -0,0 +1,93 @@
https://docs.google.com/spreadsheets/d/e/2PACX-1vQrEP1eukYo2fnNs5zsQgmZTcS1PzIDYL46Lw7un1_v70jP6mgBFqpjOJno9ic-W03PrlxsC3s3YiWA/pub?gid=0&single=true&output=csv
# Поля формы добавления и редактирования емкости
- Id - скрытое поле
- Название емкости - tank_name, input
- Объем емкости (по умолчанию 38 литров) - tank_volume, ползунок от 3 до 300 литров
- Комментарии - comments, textarea
- Активная? - active, checkbox, по умолчанию включен
- ID блока датчиков, device_id, input
Блок "Исходное сырье"
- Тип сырья - raw_type, select, варианты: vine - сок винограда винных сортов, vine_wild - сок винограда диких и садовых сортов, apple_sugar - сладкий яблочный сок, apple - яблочный сок из кислых сортов яблок, pear - грушевый сок, birch - березовый сок, water - родниковая вода
- Начальный объем сока (литры) - raw_start_value, input
- Объем сока после выпаривания (литры) - raw_value, input
- Сахаристость сока начальная (%) - raw_start_sugar, input
- Сахаристость сока после выпаривания - raw_sugar, input
- Дополнительные ингридиенты - raw_addons, textarea
Блок "Брожение"
- Дата постановки на брожение - ferment_start, поле выбора даты, по умолчанию текущий день
- Дата окончания брожения - ferment_end, поле выбора даты
- Дата первого снятия с осадка - sediment_first, поле выбора даты
- Дата второго снятия с осадка - sediment_second, поле выбора даты
Блок "Шаптализация"
- Масса внесенных полисахаров (кг) - polisugar_value, input
- Дата внесения полисахаров - polisugar_date, поле выбора даты, по умолчанию текущий день
- Температура кислотного гидролиза полисахаров (градусы цельсия) - polisugar_temp, ползунок от 30 до 100
- Масса внесенной декстрозы (кг) - dextrose_value, input
- Дата внесения декстрозы - dextrose_date, поле выбора даты, по умолчанию текущий день
- Масса внесенной фруктозы (кг) - fructose_value, input
- Дата внесения фруктозы - fructose_date, поле выбора даты, по умолчанию текущий день
- Масса добавленного меда (кг) - honey_value, input
- Дата добавления меда - honey_date, поле выбора даты
- Масса внесенной кислоты (гр) - acid_value, input
- Дата внесения кислоты - acid_date, поле выбора даты
Блок "Измерения"
- Сахаристость сусла (%) - sugar_content, input
- Дата измерения сахаристости - sugar_content_date, поле выбора даты
- PH раствора - ph, input
- Дата измерения PH раствора - ph_date, поле выбора даты
- Температура сусла - temp, input
- Дата измерения температуры сусла - temp_date, поле выбора даты, по умолчанию текущий день
Кнопки:
Сохранить
Удалить
# Поля БД
tanks: id, device_id, active, tank_name, tank_volume, ferment_start, ferment_end, sediment_first, sediment_second, comments
raws: id, name, sugar
values: id, tank_id, type, value, date

67
braga/db/logs.lua Normal file
View File

@ -0,0 +1,67 @@
local _M = {}
local db = require('db.mysql')
_M['date'] = os.date('%Y-%m-%d %H:%M:%S')
function _M.get(limit,offset)
local cur
if limit == nil then
cur = db.cursor("SELECT * FROM logs ORDER BY started DESC")
else
if offset == nil then offset = 0 end
cur = db.cursor("SELECT * FROM logs ORDER BY started DESC LIMIT "..limit.." OFFSET "..offset)
end
return db.results(cur)
end
function _M.period(start,ends,user)
local cur
if user == nil then
cur = db.cursor("SELECT user,url,client_ip,host_ip,DATE_ADD(logs.started, INTERVAL 4 HOUR) as day, ROUND(bytesin/1000,2) as bin, ROUND(bytesout/1000,2) as bout FROM logs WHERE started BETWEEN '"..start.."' AND '"..ends.."' ORDER BY started DESC")
else
cur = db.cursor("SELECT user,url,client_ip,host_ip,DATE_ADD(logs.started, INTERVAL 4 HOUR) as day, ROUND(bytesin/1000,2) as bin, ROUND(bytesout/1000,2) as bout FROM logs WHERE started BETWEEN '"..start.."' AND '"..ends.."' AND user = '"..user.."' ORDER BY started DESC")
end
return db.results(cur)
end
function _M.connects(start,ends,user)
local cur
if user == nil then
cur = db.cursor("SELECT user, ROUND(SUM(bytesin)/1000000) as bin, ROUND(SUM(bytesout)/1000000) as bout, COUNT(*) as connects FROM logs WHERE started BETWEEN '"..start.."' AND '"..ends.."' GROUP BY user ORDER BY connects DESC")
else
cur = db.cursor("SELECT user, ROUND(SUM(bytesin)/1000000) as bin, ROUND(SUM(bytesout)/1000000) as bout, COUNT(*) as connects FROM logs WHERE started BETWEEN '"..start.."' AND '"..ends.."' AND user = '"..user.."' GROUP BY user ORDER BY connects DESC")
end
return db.results(cur)
end
function _M.traffic(start,ends,user)
local cur
local results = {}
if user == nil then
cur = db.cursor("SELECT ROUND(SUM(bytesin)/1000000) as bin, ROUND(SUM(bytesout)/1000000) as bout, ROUND(SUM(bytesin)/1000000) + ROUND(SUM(bytesout)/1000000) as summ FROM logs WHERE started BETWEEN '"..start.."' AND '"..ends.."'")
else
cur = db.cursor("SELECT ROUND(SUM(bytesin)/1000000) as bin, ROUND(SUM(bytesout)/1000000) as bout, ROUND(SUM(bytesin)/1000000) + ROUND(SUM(bytesout)/1000000) as summ FROM logs WHERE started BETWEEN '"..start.."' AND '"..ends.."' AND user = '"..user.."'")
end
results = db.results(cur)
if results[1] then results = results[1] end
return results
end
function _M.daystats(start,ends,user)
local cur
local results = {}
if user == nil then
cur = db.cursor("SELECT DATE_FORMAT(started,'%d.%m') as day, ROUND(SUM(bytesin)/1000000) + ROUND(SUM(bytesout)/1000000) as summ FROM logs WHERE started BETWEEN '"..start.."' AND '"..ends.."' GROUP BY day ORDER BY day ASC")
else
cur = db.cursor("SELECT DATE_FORMAT(started,'%d.%m') as day, ROUND(SUM(bytesin)/1000000) + ROUND(SUM(bytesout)/1000000) as summ FROM logs WHERE started BETWEEN '"..start.."' AND '"..ends.."' AND user = '"..user.."' GROUP BY day ORDER BY day ASC")
end
return db.results(cur)
end
function _M.users()
local cur
local results = {}
cur = db.cursor("SELECT user FROM logs WHERE bytesin>0 GROUP BY user ORDER BY user DESC")
return db.results(cur)
end
return _M

34
braga/db/mysql.lua Normal file
View File

@ -0,0 +1,34 @@
local _M = {}
local luasql = require "luasql.mysql"
local json = require "cjson";
_M['date'] = os.date('%Y-%m-%d %H:%M:%S')
local db = "log"
local db_user = "3proxy"
local db_password = "645zzz"
local env = assert(luasql.mysql())
local con = assert(env:connect(db,db_user,db_password))
function _M.cursor(data)
return assert(con:execute(data))
end
function _M.results(cur)
local results = {}
if not cur then return results end
local i = 1
row = cur:fetch({},"a")
while row do
results[i] = {}
for key,val in pairs(row) do
results[i][key] = val
end
row = cur:fetch (row, "a")
i = i + 1
end
cur:close()
--con:close()
--env:close()
return results
end
return _M

67
braga/db/vpnlogs.lua Normal file
View File

@ -0,0 +1,67 @@
local _M = {}
local db = require('db.mysql')
_M['date'] = os.date('%Y-%m-%d %H:%M:%S')
function _M.get(limit,offset)
local cur
if limit == nil then
cur = db.cursor("SELECT * FROM vpnlogs ORDER BY started DESC")
else
if offset == nil then offset = 0 end
cur = db.cursor("SELECT * FROM vpnlogs ORDER BY started DESC LIMIT "..limit.." OFFSET "..offset)
end
return db.results(cur)
end
function _M.period(start,ends,user)
local cur
if user == nil then
cur = db.cursor("SELECT user,client_ip,DATE_ADD(logs.started, INTERVAL 4 HOUR) as day, ROUND(bytesin/1000,2) as bin, ROUND(bytesout/1000,2) as bout FROM vpnlogs WHERE started BETWEEN '"..start.."' AND '"..ends.."' ORDER BY started DESC")
else
cur = db.cursor("SELECT user,client_ip,DATE_ADD(logs.started, INTERVAL 4 HOUR) as day, ROUND(bytesin/1000,2) as bin, ROUND(bytesout/1000,2) as bout FROM vpnlogs WHERE started BETWEEN '"..start.."' AND '"..ends.."' AND user = '"..user.."' ORDER BY started DESC")
end
return db.results(cur)
end
function _M.connects(start,ends,user)
local cur
if user == nil then
cur = db.cursor("SELECT user, ROUND(SUM(bytesin)/1000000) as bin, ROUND(SUM(bytesout)/1000000) as bout, COUNT(*) as connects FROM vpnlogs WHERE started BETWEEN '"..start.."' AND '"..ends.."' GROUP BY user ORDER BY connects DESC")
else
cur = db.cursor("SELECT user, ROUND(SUM(bytesin)/1000000) as bin, ROUND(SUM(bytesout)/1000000) as bout, COUNT(*) as connects FROM vpnlogs WHERE started BETWEEN '"..start.."' AND '"..ends.."' AND user = '"..user.."' GROUP BY user ORDER BY connects DESC")
end
return db.results(cur)
end
function _M.traffic(start,ends,user)
local cur
local results = {}
if user == nil then
cur = db.cursor("SELECT ROUND(SUM(bytesin)/1000000) as bin, ROUND(SUM(bytesout)/1000000) as bout, ROUND(SUM(bytesin)/1000000) + ROUND(SUM(bytesout)/1000000) as summ FROM vpnlogs WHERE started BETWEEN '"..start.."' AND '"..ends.."'")
else
cur = db.cursor("SELECT ROUND(SUM(bytesin)/1000000) as bin, ROUND(SUM(bytesout)/1000000) as bout, ROUND(SUM(bytesin)/1000000) + ROUND(SUM(bytesout)/1000000) as summ FROM vpnlogs WHERE started BETWEEN '"..start.."' AND '"..ends.."' AND user = '"..user.."'")
end
results = db.results(cur)
if results[1] then results = results[1] end
return results
end
function _M.daystats(start,ends,user)
local cur
local results = {}
if user == nil then
cur = db.cursor("SELECT DATE_FORMAT(started,'%d.%m') as day, ROUND(SUM(bytesin)/1000000) + ROUND(SUM(bytesout)/1000000) as summ FROM vpnlogs WHERE started BETWEEN '"..start.."' AND '"..ends.."' GROUP BY day ORDER BY day ASC")
else
cur = db.cursor("SELECT DATE_FORMAT(started,'%d.%m') as day, ROUND(SUM(bytesin)/1000000) + ROUND(SUM(bytesout)/1000000) as summ FROM vpnlogs WHERE started BETWEEN '"..start.."' AND '"..ends.."' AND user = '"..user.."' GROUP BY day ORDER BY day ASC")
end
return db.results(cur)
end
function _M.users()
local cur
local results = {}
cur = db.cursor("SELECT user FROM vpnlogs WHERE bytesin>0 GROUP BY user ORDER BY user DESC")
return db.results(cur)
end
return _M

213
form.html Normal file
View File

@ -0,0 +1,213 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Форма добавления емкости</title>
<!-- Bulma CSS -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bulma@0.9.3/css/bulma.min.css">
<!-- JQuery -->
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<!-- JQuery UI -->
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<style>
/* Стили полей */
label {margin-bottom: 0.5rem;}
.field {margin-bottom: 1.5rem;}
.select, .control.is-expanded {width: 100%;}
button.delete {background-color: red !important; color: white !important;}
/* Ползунки */
.slider-range {margin: 1rem 0;}
</style>
</head>
<body>
<div class="section">
<form id="add-tank-form" method="post" action="/save_tank">
<input type="hidden" name="id" value="">
<!-- Основные поля -->
<div class="columns">
<div class="column is-half">
<label for="tank_name">Название емкости:</label>
<input class="input" type="text" name="tank_name" placeholder="Имя емкости">
<label for="device_id">ID блока датчиков:</label>
<input class="input" type="input" name="device_id">
<label for="tank_volume">Объем емкости (л):</label>
<div class="slider-range" data-min="3" data-max="300" data-default-value="38"></div>
<output id="volume-output" name="tank_volume">38 л</output>
<label for="comments">Комментарии:</label>
<textarea class="textarea" name="comments" rows="3" placeholder="Дополнительная информация..."></textarea>
<label for="active"><input type="checkbox" name="active" checked> Емкость активна?</label>
</div>
</div>
<!-- Исходное сырье -->
<hr />
<h3>Исходное сырье</h3>
<div class="columns">
<div class="column is-one-third">
<label for="raw_type">Тип сырья:</label>
<div class="select">
<select name="raw_type">
<option value="vine">Сок винограда винных сортов</option>
<option value="vine_wild">Сок винограда диких и садовых сортов</option>
<option value="apple_sugar">Сладкий яблочный сок</option>
<option value="apple">Яблочный сок из кислых сортов яблок</option>
<option value="pear">Грушевый сок</option>
<option value="birch">Берёзовый сок</option>
<option value="water">Родниковая вода</option>
</select>
</div>
</div>
<div class="column is-one-third">
<label for="raw_start_value">Начальный объём сока (л):</label>
<input class="input" type="number" step="any" min="0" name="raw_start_value">
<label for="raw_value">Объём сока после выпаривания (л):</label>
<input class="input" type="number" step="any" min="0" name="raw_value">
</div>
<div class="column is-one-third">
<label for="raw_start_sugar">Сахаристость сока начальная (%):</label>
<input class="input" type="number" step="any" min="0" name="raw_start_sugar">
<label for="raw_sugar">Сахаристость сока после выпаривания (%):</label>
<input class="input" type="number" step="any" min="0" name="raw_sugar">
</div>
</div>
<label for="raw_addons">Дополнительные ингредиенты:</label>
<textarea class="textarea" name="raw_addons" rows="3" placeholder="Ингредиенты..."></textarea>
<!-- Брожение -->
<hr />
<h3>Брожение</h3>
<div class="columns">
<div class="column is-one-third">
<label for="ferment_start">Дата начала брожения:</label>
<input class="input" type="date" name="ferment_start" value="<?php echo date('Y-m-d'); ?>">
</div>
<div class="column is-one-third">
<label for="ferment_end">Дата конца брожения:</label>
<input class="input" type="date" name="ferment_end">
</div>
<div class="column is-one-third">
<label for="sediment_first">Первое снятие с осадка:</label>
<input class="input" type="date" name="sediment_first">
</div>
<div class="column is-one-third">
<label for="sediment_second">Второе снятие с осадка:</label>
<input class="input" type="date" name="sediment_second">
</div>
</div>
<!-- Шаптализация -->
<hr />
<h3>Шаптализация</h3>
<div class="columns">
<div class="column is-one-third">
<label for="polisugar_value">Масса внесённых полисахаров (кг):</label>
<input class="input" type="number" step="any" min="0" name="polisugar_value">
<label for="polisugar_date">Дата внесения полисахаров:</label>
<input class="input" type="date" name="polisugar_date" value="<?php echo date('Y-m-d'); ?>">
</div>
<div class="column is-one-third">
<label for="polisugar_temp">Температура кислотного гидролиза полисахаров (°C):</label>
<div class="slider-range" data-min="30" data-max="100" data-default-value="50"></div>
<output id="temp-polysaccharide-output" name="polisugar_temp">50 °C</output>
</div>
<div class="column is-one-third">
<label for="dextrose_value">Масса внесённой декстрозы (кг):</label>
<input class="input" type="number" step="any" min="0" name="dextrose_value">
<label for="dextrose_date">Дата внесения декстрозы:</label>
<input class="input" type="date" name="dextrose_date" value="<?php echo date('Y-m-d'); ?>">
</div>
<div class="column is-one-third">
<label for="fructose_value">Масса внесённой фруктозы (кг):</label>
<input class="input" type="number" step="any" min="0" name="fructose_value">
<label for="fructose_date">Дата внесения фруктозы:</label>
<input class="input" type="date" name="fructose_date" value="<?php echo date('Y-m-d'); ?>">
</div>
<div class="column is-one-third">
<label for="honey_value">Масса добавленного мёда (кг):</label>
<input class="input" type="number" step="any" min="0" name="honey_value">
<label for="honey_date">Дата добавления мёда:</label>
<input class="input" type="date" name="honey_date">
</div>
<div class="column is-one-third">
<label for="acid_value">Масса внесённой кислоты (г):</label>
<input class="input" type="number" step="any" min="0" name="acid_value">
<label for="acid_date">Дата внесения кислоты:</label>
<input class="input" type="date" name="acid_date">
</div>
</div>
<!-- Измерения -->
<hr />
<h3>Измерения</h3>
<div class="columns">
<div class="column is-one-third">
<label for="sugar_content">Сахаристость сусла (%):</label>
<input class="input" type="number" step="any" min="0" name="sugar_content">
<label for="sugar_content_date">Дата измерения сахаристости:</label>
<input class="input" type="date" name="sugar_content_date">
</div>
<div class="column is-one-third">
<label for="ph">PH раствора:</label>
<input class="input" type="number" step="any" min="0" name="ph">
<label for="ph_date">Дата измерения pH:</label>
<input class="input" type="date" name="ph_date">
</div>
<div class="column is-one-third">
<label for="temp">Температура сусла (°C):</label>
<input class="input" type="number" step="any" min="0" name="temp">
<label for="temp_date">Дата измерения температуры:</label>
<input class="input" type="date" name="temp_date" value="<?php echo date('Y-m-d'); ?>">
</div>
</div>
<!-- Кнопки -->
<button class="button is-success" type="submit">Сохранить</button>
<button class="button delete" type="button">Удалить</button>
</form>
</div>
<script>
$(document).ready(function() {
// Создание ползунков
$('.slider-range').each(function () {
let min = $(this).data('min');
let max = $(this).data('max');
let defaultValue = $(this).data('default-value') || Math.round((min + max)/2);
let outputField = $(this).next();
$(this).slider({
range: false,
min: min,
max: max,
value: defaultValue,
slide: function(event, ui) {
outputField.val(ui.value + ' ' + (ui.value === 1 ? 'л' : 'л'));
},
change: function(event, ui) {
outputField.val(ui.value + ' ' + (ui.value === 1 ? 'л' : 'л'));
}
});
outputField.val(defaultValue + ' ' + (defaultValue === 1 ? 'л' : 'л'));
});
});
</script>
</body>
</html>

116
framework/auth.lua Normal file
View File

@ -0,0 +1,116 @@
local _M = {}
local resp = require('framework.resp')
local shell = require "resty.shell"
require("resty.session").init({
remember = true,
audience = "proxy",
secret = "8UQW1fsdag",
storage = "cookie",
})
local login
local password
local admin_login = 'nz8080'
local admin_password = 'WarWind.Ru'
local error = {code = 400, error = 'Неизвестная ошибка авторизации'}
local errors = {
NO_HEADER = {code = 400, error = 'Отсутствует заголовок для авторизации'},
NO_BASIC = {code = 412, error = 'Неподдерживаемый тип авторизации'},
NO_BASE = {code = 412, error = 'Неподдерживаемый тип строки авторизации'},
NO_LOGIN = {code = 412, error = 'Не указан логин'},
NO_PASSWORD = {code = 412, error = 'Не указан пароль'},
BAD_LOGIN = {code = 403, error = 'Логин не верен'},
BAD_PASSWORD = {code = 403, error = 'Пароль не верен'},
BAD_USER = {code = 403, error = 'Пользователь не найден'},
BAD_SALT = {code = 444, error = 'Неверный размер номера устройства'},
BAD_SEED = {code = 444, error = 'Контрольная сумма не совпадает'},
}
local function seed(salt)
local ok, stdout, stderr, reason, status =
shell.run('/home/zoviet/lock/decode/decode '..salt, '', 3000, 128)
if not ok then
return false
end
return tonumber(stdout)
end
function get_auth()
local auth = ngx.req.get_headers()['Authorization']
if auth==nil then
error = errors.NO_HEADER
return false
end
auth = string.match(auth,'Basic (.+)')
if auth==nil then
error = errors.NO_BASIC
return false
end
auth = ngx.decode_base64(auth)
if auth==nil then
error = errors.NO_BASE
return false
end
login,password = string.match(auth,'(.+):(.+)')
if login == nil then
error = errors.NO_LOGIN
return false
end
if password == nil then
error = errors.NO_PASSWORD
return false
end
return true
end
function _M.resp()
return resp(nil,error)
end
function _M.error()
return error.error
end
-- Авторизация админа
function _M.admin()
if not get_auth() then return false end
if admin_login ~= login then
error = errors.BAD_LOGIN
return false
end
if admin_password ~= password then
error = errors.BAD_PASSWORD
return false
end
return true
end
-- Авторизация админ-панели
function _M.front(login,password)
if admin_login ~= login then
error = errors.BAD_LOGIN
return false
end
if admin_password ~= password then
error = errors.BAD_PASSWORD
return false
end
return true
end
-- Авторизация через сессии
function _M.session()
local ses = require "resty.session".start()
print(ses:get("login"))
if _M.front(ses:get("login"),ses:get("password")) then return true end
require "resty.session".destroy()
ngx.redirect('/login')
end
return _M

7
framework/const.lua Normal file
View File

@ -0,0 +1,7 @@
local const = {}
const['DEFAULT_SUCCESS_CODE'] = 200
const['DEFAULT_SUCCESS_MSG'] = 'Успешно'
const['DEFAULT_ERR_CODE'] = 400
return const

14
framework/handle.lua Normal file
View File

@ -0,0 +1,14 @@
local transfer = require('framework.transfer')
local resp = require('framework.resp')
local handle = function(handlers)
handler = handlers[ngx.req.get_method()]
if handler then
return resp(transfer(handler))
else
ngx.status = ngx.HTTP_NOT_ALLOWED
return
end
end
return handle

37
framework/hook.lua Normal file
View File

@ -0,0 +1,37 @@
local _M = {}
local json = require('cjson.safe')
local http = require("resty.http").new()
-- отправка запроса по https
local function req(url,body)
local res, err = http:request_uri(url, {
method = "POST",
body = body,
headers = {
["Content-Type"] = "application/x-www-form-urlencoded",
},
})
if not res then
ngx.log(ngx.INFO, "Ошибка отправки хука: ", err)
return false
end
local status = res.status
if status == 200 then
ngx.log(ngx.INFO, 'Хук отправлен: '..url..' | '..body..': '..status)
ngx.say(body)
return true
else
ngx.log(ngx.INFO, 'Ошибка отправки хука (ответ получателя не 200): '..url..' | '..body..': '..status)
return false
end
end
return _M

25
framework/resp.lua Normal file
View File

@ -0,0 +1,25 @@
local const = require('framework.const')
local json = require('cjson.safe')
local build_resp = function(data, err)
local resp = {
code = const.DEFAULT_SUCCESS_CODE,
msg = const.DEFAULT_SUCCESS_MSG
}
if err then
resp.code = err.code or const.DEFAULT_ERR_CODE
resp.msg = err.error or err
ngx.status = resp.code
elseif data then
resp.data = data
end
return resp
end
local resp = function(data, err)
return json.encode(build_resp(data, err))
end
return resp

26
framework/transfer.lua Normal file
View File

@ -0,0 +1,26 @@
local raw_transfer = function(entry)
return entry
end
local func_transfer = function(entry)
return entry()
end
local type_transfer = {}
type_transfer['string'] = raw_transfer
type_transfer['number'] = raw_transfer
type_transfer['boolean'] = raw_transfer
type_transfer['nil'] = raw_transfer
type_transfer['table'] = raw_transfer
type_transfer['function'] = func_transfer
local transfer = function(entry)
local t = type_transfer[type(entry)]
if t then
return t(entry)
else
return entry
end
end
return transfer

24
front/add.lua Normal file
View File

@ -0,0 +1,24 @@
local template = require "resty.template"
local handle = require('framework.handle')
local function resp(start,ends)
local view = template.new("index.html", "layout.html")
view.title = "Бродильные емкости"
view:render()
end
local request = {
POST = function()
ngx.req.read_body()
local args, err = ngx.req.get_post_args()
resp(string.match(args['datetimes'], "([%d-%s:]+)%s>%s([%d-%s:]+)"))
end,
GET = function()
local ends = os.date('%Y-%m-%d %H:%M:%S',os.time()+14400)
local start = os.date('%Y-%m-%d %H:%M:%S',os.time()-86400)
resp(start,ends)
end
}
ngx.say(handle(request))

52
front/config.lua Normal file
View File

@ -0,0 +1,52 @@
local template = require "resty.template"
local auth = require('framework.auth')
local handle = require('framework.handle')
local lfs = require("lfs")
local proxy = require("core.proxy")
local path = proxy['config']
-- чтение файла
local function read_file()
local file = io.open(path) or error("Не могу открыть file: " .. path)
local content = file:read("*a") or error("Не могу прочитать " .. path)
file:close()
return content
end
-- запись файла
local function write_file(content)
file = io.open(path,'w+')
local result = file:write(content) or error("Не могу записать " .. path)
file:close()
proxy.restart()
return result
end
local function render()
local view = template.new("config.html", "layout.html")
view.title = "Настройки прокси-сервера"
view.data = read_file()
view:render()
end
local request = {
POST = function()
ngx.req.read_body()
local args, err = ngx.req.get_post_args()
if args['config'] then
write_file(args['config'])
end
render()
end,
GET = function()
local req = ngx.req.get_uri_args()
render()
end
}
if auth.session() then
ngx.say(handle(request))
end

36
front/index.lua Normal file
View File

@ -0,0 +1,36 @@
local template = require "resty.template"
local handle = require('framework.handle')
local function resp(start,ends)
local view = template.new("index.html", "layout.html")
view.start = start
view.ends = ends
view.title = "Мои чаны"
view.cellar = {temp=12, warm=45, warm_status='is-danger',temp_status='is-warning'}
view.room = {temp=18, warm=45,warm_status='is-success',temp_status='is-warning'}
view.stat = {
{temp = 16, day = '2026-03-02'},
{temp = 17, day = '2026-03-03'},
{temp = 18, day = '2026-03-04'},
{temp = 17, day = '2026-03-05'},
{temp = 15, day = '2026-03-06'}
}
view.tank = {status = 'is-primary'}
view:render()
end
local request = {
POST = function()
ngx.req.read_body()
local args, err = ngx.req.get_post_args()
resp(string.match(args['datetimes'], "([%d-%s:]+)%s>%s([%d-%s:]+)"))
end,
GET = function()
local ends = os.date('%Y-%m-%d %H:%M:%S',os.time()+14400)
local start = os.date('%Y-%m-%d %H:%M:%S',os.time()-86400)
resp(start,ends)
end
}
ngx.say(handle(request))

444
logs/error.log Normal file
View File

@ -0,0 +1,444 @@
2026/03/07 23:39:50 [error] 11614#0: *2 lua entry thread aborted: runtime error: /var/www/braga/braga/framework/handle.lua:1: module 'framework.transfer' not found:
no field package.preload['framework.transfer']
no file '/var/www/blog/framework/transfer.lua'
no file '/var/www/braga/framework/transfer.lua'
no file '/var/www/appphotos/framework/transfer.lua'
no file '/var/www/apihh/framework/transfer.lua'
no file '/usr/local/openresty/site/lualib/framework/transfer.ljbc'
no file '/usr/local/openresty/site/lualib/framework/transfer/init.ljbc'
no file '/usr/local/openresty/lualib/framework/transfer.ljbc'
no file '/usr/local/openresty/lualib/framework/transfer/init.ljbc'
no file '/usr/local/openresty/site/lualib/framework/transfer.lua'
no file '/usr/local/openresty/site/lualib/framework/transfer/init.lua'
no file '/usr/local/openresty/lualib/framework/transfer.lua'
no file '/usr/local/openresty/lualib/framework/transfer/init.lua'
no file './framework/transfer.lua'
no file '/usr/local/openresty/luajit/share/luajit-2.1.0-beta3/framework/transfer.lua'
no file '/usr/local/share/lua/5.1/framework/transfer.lua'
no file '/usr/local/share/lua/5.1/framework/transfer/init.lua'
no file '/usr/local/openresty/luajit/share/lua/5.1/framework/transfer.lua'
no file '/usr/local/openresty/luajit/share/lua/5.1/framework/transfer/init.lua'
no file '/usr/local/openresty/site/lualib/framework/transfer.so'
no file '/usr/local/openresty/lualib/framework/transfer.so'
no file './framework/transfer.so'
no file '/usr/local/lib/lua/5.1/framework/transfer.so'
no file '/usr/local/openresty/luajit/lib/lua/5.1/framework/transfer.so'
no file '/usr/local/lib/lua/5.1/loadall.so'
no file '/usr/local/openresty/site/lualib/framework.so'
no file '/usr/local/openresty/lualib/framework.so'
no file './framework.so'
no file '/usr/local/lib/lua/5.1/framework.so'
no file '/usr/local/openresty/luajit/lib/lua/5.1/framework.so'
no file '/usr/local/lib/lua/5.1/loadall.so'
stack traceback:
coroutine 0:
[C]: in function 'require'
/var/www/braga/braga/front/index.lua:2: in main chunk, client: 127.0.0.1, server: braga, request: "GET / HTTP/1.1", host: "braga"
2026/03/07 23:39:50 [error] 11614#0: *3 lua entry thread aborted: runtime error: /var/www/braga/braga/framework/handle.lua:1: module 'framework.transfer' not found:
no field package.preload['framework.transfer']
no file '/var/www/blog/framework/transfer.lua'
no file '/var/www/braga/framework/transfer.lua'
no file '/var/www/appphotos/framework/transfer.lua'
no file '/var/www/apihh/framework/transfer.lua'
no file '/usr/local/openresty/site/lualib/framework/transfer.ljbc'
no file '/usr/local/openresty/site/lualib/framework/transfer/init.ljbc'
no file '/usr/local/openresty/lualib/framework/transfer.ljbc'
no file '/usr/local/openresty/lualib/framework/transfer/init.ljbc'
no file '/usr/local/openresty/site/lualib/framework/transfer.lua'
no file '/usr/local/openresty/site/lualib/framework/transfer/init.lua'
no file '/usr/local/openresty/lualib/framework/transfer.lua'
no file '/usr/local/openresty/lualib/framework/transfer/init.lua'
no file './framework/transfer.lua'
no file '/usr/local/openresty/luajit/share/luajit-2.1.0-beta3/framework/transfer.lua'
no file '/usr/local/share/lua/5.1/framework/transfer.lua'
no file '/usr/local/share/lua/5.1/framework/transfer/init.lua'
no file '/usr/local/openresty/luajit/share/lua/5.1/framework/transfer.lua'
no file '/usr/local/openresty/luajit/share/lua/5.1/framework/transfer/init.lua'
no file '/usr/local/openresty/site/lualib/framework/transfer.so'
no file '/usr/local/openresty/lualib/framework/transfer.so'
no file './framework/transfer.so'
no file '/usr/local/lib/lua/5.1/framework/transfer.so'
no file '/usr/local/openresty/luajit/lib/lua/5.1/framework/transfer.so'
no file '/usr/local/lib/lua/5.1/loadall.so'
no file '/usr/local/openresty/site/lualib/framework.so'
no file '/usr/local/openresty/lualib/framework.so'
no file './framework.so'
no file '/usr/local/lib/lua/5.1/framework.so'
no file '/usr/local/openresty/luajit/lib/lua/5.1/framework.so'
no file '/usr/local/lib/lua/5.1/loadall.so'
stack traceback:
coroutine 0:
[C]: in function 'require'
/var/www/braga/braga/front/index.lua:2: in main chunk, client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/07 23:40:52 [error] 11797#0: *1 lua entry thread aborted: runtime error: /var/www/braga/braga/front/index.lua:2: module 'braga.framework.handle' not found:
no field package.preload['braga.framework.handle']
no file '/var/www/blog/braga/framework/handle.lua'
no file '/var/www/braga/braga/braga/framework/handle.lua'
no file '/var/www/appphotos/braga/framework/handle.lua'
no file '/var/www/apihh/braga/framework/handle.lua'
no file '/usr/local/openresty/site/lualib/braga/framework/handle.ljbc'
no file '/usr/local/openresty/site/lualib/braga/framework/handle/init.ljbc'
no file '/usr/local/openresty/lualib/braga/framework/handle.ljbc'
no file '/usr/local/openresty/lualib/braga/framework/handle/init.ljbc'
no file '/usr/local/openresty/site/lualib/braga/framework/handle.lua'
no file '/usr/local/openresty/site/lualib/braga/framework/handle/init.lua'
no file '/usr/local/openresty/lualib/braga/framework/handle.lua'
no file '/usr/local/openresty/lualib/braga/framework/handle/init.lua'
no file './braga/framework/handle.lua'
no file '/usr/local/openresty/luajit/share/luajit-2.1.0-beta3/braga/framework/handle.lua'
no file '/usr/local/share/lua/5.1/braga/framework/handle.lua'
no file '/usr/local/share/lua/5.1/braga/framework/handle/init.lua'
no file '/usr/local/openresty/luajit/share/lua/5.1/braga/framework/handle.lua'
no file '/usr/local/openresty/luajit/share/lua/5.1/braga/framework/handle/init.lua'
no file '/usr/local/openresty/site/lualib/braga/framework/handle.so'
no file '/usr/local/openresty/lualib/braga/framework/handle.so'
no file './braga/framework/handle.so'
no file '/usr/local/lib/lua/5.1/braga/framework/handle.so'
no file '/usr/local/openresty/luajit/lib/lua/5.1/braga/framework/handle.so'
no file '/usr/local/lib/lua/5.1/loadall.so'
no file '/usr/local/openresty/site/lualib/braga.so'
no file '/usr/local/openresty/lualib/braga.so'
no file './braga.so'
no file '/usr/local/lib/lua/5.1/braga.so'
no file '/usr/local/openresty/luajit/lib/lua/5.1/braga.so'
no file '/usr/local/lib/lua/5.1/loadall.so'
stack traceback:
coroutine 0:
[C]: in function 'require'
/var/www/braga/braga/front/index.lua:2: in main chunk, client: 127.0.0.1, server: braga, request: "GET / HTTP/1.1", host: "braga"
2026/03/07 23:42:52 [error] 11887#0: *1 failed to load external Lua file "/var/www/braga/braga/front/index.lua": cannot open /var/www/braga/braga/front/index.lua: No such file or directory, client: 127.0.0.1, server: braga, request: "GET / HTTP/1.1", host: "braga"
2026/03/07 23:43:42 [error] 11887#0: *1 failed to load external Lua file "/var/www/braga/braga/front/index.lua": cannot open /var/www/braga/braga/front/index.lua: No such file or directory, client: 127.0.0.1, server: braga, request: "GET / HTTP/1.1", host: "braga"
2026/03/07 23:43:42 [error] 11887#0: *1 failed to load external Lua file "/var/www/braga/braga/front/index.lua": cannot open /var/www/braga/braga/front/index.lua: No such file or directory, client: 127.0.0.1, server: braga, request: "GET / HTTP/1.1", host: "braga"
2026/03/07 23:43:42 [error] 11887#0: *1 failed to load external Lua file "/var/www/braga/braga/front/index.lua": cannot open /var/www/braga/braga/front/index.lua: No such file or directory, client: 127.0.0.1, server: braga, request: "GET / HTTP/1.1", host: "braga"
2026/03/07 23:43:43 [error] 11887#0: *1 failed to load external Lua file "/var/www/braga/braga/front/index.lua": cannot open /var/www/braga/braga/front/index.lua: No such file or directory, client: 127.0.0.1, server: braga, request: "GET / HTTP/1.1", host: "braga"
2026/03/07 23:43:43 [error] 11887#0: *1 failed to load external Lua file "/var/www/braga/braga/front/index.lua": cannot open /var/www/braga/braga/front/index.lua: No such file or directory, client: 127.0.0.1, server: braga, request: "GET / HTTP/1.1", host: "braga"
2026/03/07 23:43:43 [error] 11887#0: *1 failed to load external Lua file "/var/www/braga/braga/front/index.lua": cannot open /var/www/braga/braga/front/index.lua: No such file or directory, client: 127.0.0.1, server: braga, request: "GET / HTTP/1.1", host: "braga"
2026/03/07 23:43:43 [error] 11887#0: *1 failed to load external Lua file "/var/www/braga/braga/front/index.lua": cannot open /var/www/braga/braga/front/index.lua: No such file or directory, client: 127.0.0.1, server: braga, request: "GET / HTTP/1.1", host: "braga"
2026/03/07 23:43:44 [error] 11887#0: *1 failed to load external Lua file "/var/www/braga/braga/front/index.lua": cannot open /var/www/braga/braga/front/index.lua: No such file or directory, client: 127.0.0.1, server: braga, request: "GET / HTTP/1.1", host: "braga"
2026/03/07 23:43:44 [error] 11887#0: *1 failed to load external Lua file "/var/www/braga/braga/front/index.lua": cannot open /var/www/braga/braga/front/index.lua: No such file or directory, client: 127.0.0.1, server: braga, request: "GET / HTTP/1.1", host: "braga"
2026/03/07 23:44:14 [error] 11948#0: *1 lua entry thread aborted: runtime error: [string "context=... or {}..."]:49: bad argument #1 to 'pairs' (table expected, got nil)
stack traceback:
coroutine 0:
[C]: in function 'pairs'
[string "context=... or {}..."]:49: in function 'process'
/usr/local/share/lua/5.1/resty/template.lua:311: in function 'render'
/var/www/braga/front/index.lua:7: in function 'resp'
/var/www/braga/front/index.lua:19: in function 'transfer'
/var/www/braga/framework/handle.lua:7: in function 'handle'
/var/www/braga/front/index.lua:23: in main chunk, client: 127.0.0.1, server: braga, request: "GET / HTTP/1.1", host: "braga"
2026/03/07 23:51:43 [error] 12275#0: *1 open() "/var/www/braga/braga/public/css/bulma-dracula.css" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/bulma-dracula.css HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/07 23:51:43 [error] 12275#0: *2 open() "/var/www/braga/braga/public/css/font-awesome.min.css" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/font-awesome.min.css HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/07 23:51:43 [error] 12275#0: *2 open() "/var/www/braga/braga/public/css/style.css" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/07 23:51:43 [error] 12275#0: *2 open() "/var/www/braga/braga/public/img/proxy_icon.png" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/img/proxy_icon.png HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/07 23:51:43 [error] 12275#0: *2 open() "/var/www/braga/braga/public/js/jquery-3.3.1.min.js" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/js/jquery-3.3.1.min.js HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/07 23:51:43 [error] 12275#0: *2 open() "/var/www/braga/braga/public/js/moment.min.js" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/js/moment.min.js HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/07 23:51:43 [error] 12275#0: *2 open() "/var/www/braga/braga/public/js/chart.min.js" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/js/chart.min.js HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/07 23:51:43 [error] 12275#0: *2 open() "/var/www/braga/braga/public/js/daterangepicker.min.js" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/js/daterangepicker.min.js HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/07 23:51:43 [error] 12275#0: *2 open() "/var/www/braga/braga/public/js/bulma.js" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/js/bulma.js HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/07 23:51:43 [error] 12275#0: *2 open() "/var/www/braga/braga/public/js/moment.min.js" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/js/moment.min.js HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/07 23:51:43 [error] 12275#0: *2 open() "/var/www/braga/braga/public/js/chart.min.js" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/js/chart.min.js HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/07 23:51:43 [error] 12275#0: *2 open() "/var/www/braga/braga/public/js/daterangepicker.min.js" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/js/daterangepicker.min.js HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/07 23:51:43 [error] 12275#0: *2 open() "/var/www/braga/braga/public/js/bulma.js" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/js/bulma.js HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/07 23:51:45 [error] 12275#0: *2 open() "/var/www/braga/braga/public/css/font-awesome.min.css" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/font-awesome.min.css HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/07 23:51:45 [error] 12275#0: *2 open() "/var/www/braga/braga/public/css/bulma-dracula.css" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/bulma-dracula.css HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/07 23:51:45 [error] 12275#0: *2 open() "/var/www/braga/braga/public/css/style.css" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/07 23:51:45 [error] 12275#0: *2 open() "/var/www/braga/braga/public/img/proxy_icon.png" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/img/proxy_icon.png HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/07 23:51:45 [error] 12275#0: *2 open() "/var/www/braga/braga/public/js/jquery-3.3.1.min.js" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/js/jquery-3.3.1.min.js HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/07 23:51:45 [error] 12275#0: *2 open() "/var/www/braga/braga/public/js/moment.min.js" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/js/moment.min.js HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/07 23:51:45 [error] 12275#0: *2 open() "/var/www/braga/braga/public/js/chart.min.js" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/js/chart.min.js HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/07 23:51:45 [error] 12275#0: *2 open() "/var/www/braga/braga/public/js/daterangepicker.min.js" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/js/daterangepicker.min.js HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/07 23:51:45 [error] 12275#0: *2 open() "/var/www/braga/braga/public/js/bulma.js" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/js/bulma.js HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/07 23:52:17 [error] 12310#0: *5 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:52:17 [error] 12310#0: *5 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:52:17 [error] 12310#0: *5 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:52:17 [error] 12310#0: *5 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:52:17 [error] 12313#0: *3 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:52:17 [error] 12310#0: *5 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:52:17 [error] 12310#0: *5 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:52:17 [error] 12310#0: *5 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:52:17 [error] 12310#0: *5 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:52:17 [error] 12310#0: *5 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/07 23:52:18 [error] 12310#0: *5 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/07 23:52:18 [error] 12310#0: *5 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/07 23:54:18 [error] 12310#0: *7 open() "/var/www/braga/public/img/icon.png" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/img/icon.png HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/07 23:54:19 [error] 12310#0: *7 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:54:19 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:54:19 [error] 12310#0: *7 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:54:19 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:54:19 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:54:19 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:54:19 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:54:19 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:54:19 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:54:19 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/07 23:54:19 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/07 23:54:19 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/07 23:56:13 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:56:13 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:56:13 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:56:13 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:56:13 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:56:13 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:56:13 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:56:13 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:56:13 [error] 12310#0: *7 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:56:13 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/07 23:56:13 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/07 23:56:13 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/07 23:57:01 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:57:01 [error] 12310#0: *7 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:57:01 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:57:01 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:57:01 [error] 12310#0: *7 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:57:01 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:57:01 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:57:01 [error] 12310#0: *7 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:57:01 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:57:01 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/07 23:57:01 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/07 23:57:01 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/07 23:57:17 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:57:17 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:57:17 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:57:17 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:57:17 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:57:17 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:57:17 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:57:17 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:57:17 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:57:17 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/07 23:57:17 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/07 23:57:17 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/07 23:58:46 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:58:46 [error] 12310#0: *7 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:58:46 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:58:46 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:58:46 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:58:46 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:58:46 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:58:46 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:58:46 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/07 23:58:46 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/07 23:58:46 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/07 23:58:46 [error] 12310#0: *8 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 00:02:29 [error] 12310#0: *9 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 00:02:29 [error] 12310#0: *9 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 00:02:29 [error] 12310#0: *9 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 00:02:29 [error] 12310#0: *9 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 00:02:29 [error] 12310#0: *9 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 00:02:29 [error] 12310#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 00:02:29 [error] 12310#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 00:02:29 [error] 12310#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 00:02:29 [error] 12310#0: *9 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 00:02:29 [error] 12310#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 00:02:29 [error] 12310#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 00:02:29 [error] 12310#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 13:18:05 [error] 4616#0: *2 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 13:18:05 [error] 4616#0: *2 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 13:18:05 [error] 4616#0: *2 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 13:18:05 [error] 4616#0: *2 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 13:18:05 [error] 4616#0: *3 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 13:18:05 [error] 4616#0: *4 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 13:18:05 [error] 4616#0: *3 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 13:18:12 [error] 4616#0: *4 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 13:18:12 [error] 4616#0: *3 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 13:18:12 [error] 4616#0: *4 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 13:18:12 [error] 4616#0: *3 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 13:18:12 [error] 4616#0: *4 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 13:18:12 [error] 4616#0: *3 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 13:53:18 [error] 4616#0: *6 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 13:53:18 [error] 4616#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 13:53:18 [error] 4618#0: *7 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 13:53:18 [error] 4616#0: *8 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 13:53:18 [error] 4618#0: *7 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 13:53:18 [error] 4616#0: *8 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 13:53:18 [error] 4618#0: *7 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 13:53:18 [error] 4616#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 13:53:18 [error] 4618#0: *7 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 13:53:18 [error] 4616#0: *8 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 13:53:18 [error] 4616#0: *8 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 13:53:18 [error] 4618#0: *7 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 13:53:18 [error] 4616#0: *8 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:03:37 [error] 4616#0: *9 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:03:37 [error] 4616#0: *9 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:03:37 [error] 4616#0: *9 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:03:37 [error] 4616#0: *9 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:03:37 [error] 4616#0: *9 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:03:37 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:03:37 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:03:37 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:03:37 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:03:37 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:03:37 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:03:37 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:04:10 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:10 [error] 4616#0: *9 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:10 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:10 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:10 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:10 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:10 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:10 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:10 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:10 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:04:10 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:04:10 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:04:27 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:27 [error] 4616#0: *9 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:27 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:27 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:27 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:27 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:27 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:27 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:27 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:27 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:04:27 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:04:27 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:04:40 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:40 [error] 4616#0: *9 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:40 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:40 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:40 [error] 4616#0: *9 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:40 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:40 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:40 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:40 [error] 4616#0: *9 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:40 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:04:40 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:04:40 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:04:58 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:58 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:58 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:58 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:58 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:58 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:58 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:58 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:58 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:04:58 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:04:58 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:04:58 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:05:26 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:05:26 [error] 4616#0: *9 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:05:26 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:05:26 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:05:26 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:05:26 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:05:26 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:05:26 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:05:26 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:05:26 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:05:26 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:05:26 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:06:06 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:06:06 [error] 4616#0: *9 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:06:06 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:06:06 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:06:06 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:06:06 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:06:06 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:06:06 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:06:06 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:06:06 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:06:06 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:06:06 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:06:16 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:06:16 [error] 4616#0: *9 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:06:16 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:06:16 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:06:16 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:06:16 [error] 4616#0: *9 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:06:16 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:06:16 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:06:16 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:06:16 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:06:16 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:06:16 [error] 4616#0: *10 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:09:22 [error] 4616#0: *11 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:09:22 [error] 4616#0: *11 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:09:22 [error] 4616#0: *11 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:09:22 [error] 4616#0: *11 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:09:22 [error] 4616#0: *11 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:09:22 [error] 4616#0: *11 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:09:22 [error] 4616#0: *11 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:09:22 [error] 4616#0: *11 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:09:22 [error] 4616#0: *11 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:09:22 [error] 4616#0: *11 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:09:22 [error] 4616#0: *11 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:09:22 [error] 4616#0: *11 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:09:50 [error] 4616#0: *11 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:09:50 [error] 4616#0: *11 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:09:50 [error] 4616#0: *11 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff2 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:09:50 [error] 4616#0: *11 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:09:50 [error] 4616#0: *11 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:09:50 [error] 4616#0: *11 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.woff HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:09:50 [error] 4616#0: *11 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:09:50 [error] 4616#0: *12 open() "/var/www/braga/public/public/fonts/VisueltPro-Regular.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Regular.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:09:50 [error] 4616#0: *12 open() "/var/www/braga/public/public/fonts/VisueltPro-Bold.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/VisueltPro-Bold.ttf HTTP/1.1", host: "braga", referrer: "http://braga/public/css/style.css"
2026/03/08 14:09:50 [error] 4616#0: *12 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff2" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:09:50 [error] 4616#0: *12 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.woff" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.woff?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:09:50 [error] 4616#0: *12 open() "/var/www/braga/public/public/fonts/fontawesome-webfont.ttf" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/fonts/fontawesome-webfont.ttf?v=4.7.0 HTTP/1.1", host: "braga", referrer: "http://braga/public/css/font-awesome.min.css"
2026/03/08 14:13:19 [error] 8788#0: *4 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 14:14:05 [error] 8788#0: *4 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 14:24:22 [error] 8788#0: *9 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 14:24:23 [error] 8788#0: *9 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 14:24:24 [error] 8789#0: *7 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 14:28:37 [error] 8788#0: *11 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 14:28:38 [error] 8788#0: *10 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 14:28:55 [error] 8788#0: *11 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 14:28:56 [error] 8788#0: *10 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 14:36:34 [error] 8788#0: *14 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 14:36:35 [error] 8788#0: *13 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 14:39:08 [error] 8788#0: *16 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 14:39:09 [error] 8788#0: *15 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 14:41:26 [error] 8788#0: *18 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 14:41:27 [error] 8788#0: *17 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 14:41:42 [error] 8788#0: *18 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 14:41:43 [error] 8788#0: *19 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 14:42:10 [error] 8788#0: *18 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 14:42:11 [error] 8788#0: *19 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 14:42:31 [error] 8788#0: *18 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 14:42:32 [error] 8788#0: *19 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 14:44:11 [error] 8788#0: *18 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 14:44:12 [error] 8788#0: *19 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 14:44:53 [error] 8788#0: *18 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 14:44:55 [error] 8788#0: *19 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 14:46:54 [error] 8788#0: *21 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 14:46:55 [error] 8788#0: *20 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 14:47:23 [error] 8788#0: *21 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 14:47:25 [error] 8788#0: *22 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 14:47:51 [error] 8788#0: *21 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 14:47:52 [error] 8788#0: *22 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 14:48:05 [error] 8788#0: *21 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 14:48:07 [error] 8788#0: *22 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 14:49:41 [error] 8788#0: *21 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 14:49:43 [error] 8788#0: *22 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 14:50:11 [error] 8788#0: *21 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 14:50:12 [error] 8788#0: *22 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 14:50:22 [error] 8788#0: *21 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 14:50:23 [error] 8788#0: *22 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 14:50:43 [error] 8788#0: *21 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 14:50:44 [error] 8788#0: *22 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 14:52:20 [error] 8788#0: *21 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 14:52:21 [error] 8788#0: *22 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 14:53:09 [error] 8788#0: *21 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 14:53:10 [error] 8788#0: *22 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 14:53:30 [error] 8788#0: *21 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 14:53:32 [error] 8788#0: *22 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 14:54:51 [error] 8788#0: *21 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 14:54:53 [error] 8788#0: *22 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 14:55:16 [error] 8788#0: *21 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 14:55:17 [error] 8788#0: *22 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 14:57:09 [error] 8788#0: *21 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 14:57:10 [error] 8788#0: *22 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 14:58:12 [error] 8788#0: *21 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 14:58:13 [error] 8788#0: *22 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 15:00:37 [error] 8788#0: *26 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 15:00:39 [error] 8788#0: *25 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 15:00:51 [error] 8788#0: *26 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 15:00:53 [error] 8788#0: *25 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 15:03:47 [error] 8788#0: *28 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 15:03:49 [error] 8788#0: *27 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"
2026/03/08 15:04:17 [error] 8788#0: *28 open() "/var/www/braga/public/css/style.css.map" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /public/css/style.css.map HTTP/1.1", host: "braga"
2026/03/08 15:04:19 [error] 8788#0: *27 open() "/var/www/braga/favicon.ico" failed (2: No such file or directory), client: 127.0.0.1, server: braga, request: "GET /favicon.ico HTTP/1.1", host: "braga", referrer: "http://braga/"

27
nginx.conf Normal file
View File

@ -0,0 +1,27 @@
server {
listen 80;
server_name braga;
root /var/www/braga;
error_log /var/www/braga/logs/error.log;
set $template_root /var/www/braga/templates;
location /public {
access_log off;
}
location / {
default_type text/html;
add_header 'Access-Control-Allow-Origin' '*' always;
proxy_connect_timeout 140;
proxy_read_timeout 120;
proxy_send_timeout 120;
content_by_lua_file /var/www/braga/front/index.lua;
}
location ~* \.(?:css(\.map)?|js(\.map)?|yaml|ico|json|pdf|jpe?g|png|gif|ico|cur|heic|webp|tiff?|mp3|m4a|aac|ogg|midi?|wav|mp4|mov|webm|mpe?g|avi|ogv|flv|wmv)$ {
access_log off;
}
}

73
pub?gid=0 Normal file

File diff suppressed because one or more lines are too long

74
public/css/admin.css Normal file
View File

@ -0,0 +1,74 @@
html, body {
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
font-size: 16px;
line-height: 1.5;
height: 100%;
}
nav.navbar {
border-top: 4px solid #276cda;
margin-bottom: 1rem;
}
.navbar-item.brand-text {
font-weight: 300;
}
.navbar-item, .navbar-link {
font-size: 14px;
font-weight: 700;
}
.columns {
width: 100%;
height: 100%;
margin-left: 0;
}
.menu-label {
letter-spacing: 1.3;
font-weight: 700;
}
.menu-list a {
font-size: 14px;
font-weight: 700;
}
.menu-list a:hover {
background-color: transparent;
}
.menu-list a.is-active {
background-color: transparent;
color: #276cda;
font-weight: 700;
}
.card {
box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.18);
margin-bottom: 2rem;
}
.card-header-title {
font-weight: 400;
}
.info-tiles {
margin: 1rem 0;
}
.info-tiles .subtitle {
font-weight: 300;
}
.hero.welcome.is-info {
background: -webkit-linear-gradient(to right, #5B86E5, #36D1DC);
background: linear-gradient(to right, #5B86E5, #36D1DC);
}
.hero.welcome .title, .hero.welcome .subtitle {
}
.card .content {
font-size: 14px;
}
.card-footer-item {
font-size: 14px;
font-weight: 700;
}
.card-footer-item:hover {
}
.card-table .table {
margin-bottom: 0;
}
.events-card .card-table {
max-height: 250px;
overflow-y: scroll;
}

6928
public/css/bulma-dracula.css Normal file

File diff suppressed because it is too large Load Diff

1
public/css/bulma.min.css vendored Normal file

File diff suppressed because one or more lines are too long

4
public/css/font-awesome.min.css vendored Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

51
public/css/login.css Normal file
View File

@ -0,0 +1,51 @@
html,body {
font-family: 'Questrial', sans-serif;
font-size: 14px;
font-weight: 300;
}
.hero.is-success {
background: #F2F6FA;
}
.hero .nav, .hero.is-success .nav {
-webkit-box-shadow: none;
box-shadow: none;
}
.box {
margin-top: 5rem;
}
.avatar {
margin-top: -70px;
padding-bottom: 20px;
}
.avatar img {
padding: 5px;
background: #fff;
border-radius: 50%;
-webkit-box-shadow: 0 2px 3px rgba(10,10,10,.1), 0 0 0 1px rgba(10,10,10,.1);
box-shadow: 0 2px 3px rgba(10,10,10,.1), 0 0 0 1px rgba(10,10,10,.1);
}
input {
font-weight: 300;
}
p {
font-weight: 700;
}
p.subtitle {
padding-top: 1rem;
}
.login-hr{
border-bottom: 1px solid black;
}
.has-text-black{
color: black;
}
.field{
padding-bottom: 10px;
}
.fa{
margin-left: 5px;
}

11904
public/css/style.css Normal file

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

545
public/fonts/demo.html Normal file
View File

@ -0,0 +1,545 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="robots" content="noindex, noarchive">
<meta name="format-detection" content="telephone=no">
<title>Transfonter demo</title>
<link href="stylesheet.css" rel="stylesheet">
<style>
/*
http://meyerweb.com/eric/tools/css/reset/
v2.0 | 20110126
License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
display: block;
}
body {
line-height: 1;
}
ol, ul {
list-style: none;
}
blockquote, q {
quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: '';
content: none;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
/* common styles */
body {
background: #f1f1f1;
color: #000;
}
.page {
background: #fff;
width: 920px;
margin: 0 auto;
padding: 20px 20px 0 20px;
overflow: hidden;
}
.font-container {
overflow-x: auto;
overflow-y: hidden;
margin-bottom: 40px;
line-height: 1.3;
white-space: nowrap;
padding-bottom: 5px;
}
h1 {
position: relative;
background: #444;
font-size: 32px;
color: #fff;
padding: 10px 20px;
margin: 0 -20px 12px -20px;
}
.letters {
font-size: 25px;
margin-bottom: 20px;
}
.s10:before {
content: '10px';
}
.s11:before {
content: '11px';
}
.s12:before {
content: '12px';
}
.s14:before {
content: '14px';
}
.s18:before {
content: '18px';
}
.s24:before {
content: '24px';
}
.s30:before {
content: '30px';
}
.s36:before {
content: '36px';
}
.s48:before {
content: '48px';
}
.s60:before {
content: '60px';
}
.s72:before {
content: '72px';
}
.s10:before, .s11:before, .s12:before, .s14:before,
.s18:before, .s24:before, .s30:before, .s36:before,
.s48:before, .s60:before, .s72:before {
font-family: Arial, sans-serif;
font-size: 10px;
font-weight: normal;
font-style: normal;
color: #999;
padding-right: 6px;
}
pre {
display: block;
position: relative;
padding: 9px;
margin: 0 0 10px;
font-family: Monaco, Menlo, Consolas, "Courier New", monospace !important;
font-size: 13px;
line-height: 1.428571429;
color: #333;
font-weight: normal !important;
font-style: normal !important;
background-color: #f5f5f5;
border: 1px solid #ccc;
overflow-x: auto;
border-radius: 4px;
}
pre:after {
display: block;
position: absolute;
right: 0;
top: 0;
content: 'Usage';
line-height: 1;
padding: 5px 8px;
font-size: 12px;
color: #767676;
background-color: #fff;
border: 1px solid #ccc;
border-right: none;
border-top: none;
border-radius: 0 4px 0 4px;
z-index: 10;
}
/* responsive */
@media (max-width: 959px) {
.page {
width: auto;
margin: 0;
}
}
</style>
</head>
<body>
<div class="page">
<div class="demo" style="font-family: 'Visuelt Pro'; font-weight: 500; font-style: normal;">
<h1>VisueltPro-Medium</h1>
<pre>.your-style {
font-family: 'Visuelt Pro';
font-weight: 500;
font-style: normal;
}</pre>
<div class="font-container">
<p class="letters">
abcdefghijklmnopqrstuvwxyz<br>
ABCDEFGHIJKLMNOPQRSTUVWXYZ<br>
0123456789.:,;()*!?'@#<>$%&^+-=~
</p>
<p class="s10" style="font-size: 10px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s11" style="font-size: 11px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s12" style="font-size: 12px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s14" style="font-size: 14px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s18" style="font-size: 18px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s24" style="font-size: 24px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s30" style="font-size: 30px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s36" style="font-size: 36px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s48" style="font-size: 48px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s60" style="font-size: 60px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s72" style="font-size: 72px;">The quick brown fox jumps over the lazy dog.</p>
</div>
</div>
<div class="demo" style="font-family: 'Visuelt Pro'; font-weight: normal; font-style: normal;">
<h1>VisueltPro-Regular</h1>
<pre>.your-style {
font-family: 'Visuelt Pro';
font-weight: normal;
font-style: normal;
}</pre>
<div class="font-container">
<p class="letters">
abcdefghijklmnopqrstuvwxyz<br>
ABCDEFGHIJKLMNOPQRSTUVWXYZ<br>
0123456789.:,;()*!?'@#<>$%&^+-=~
</p>
<p class="s10" style="font-size: 10px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s11" style="font-size: 11px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s12" style="font-size: 12px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s14" style="font-size: 14px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s18" style="font-size: 18px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s24" style="font-size: 24px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s30" style="font-size: 30px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s36" style="font-size: 36px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s48" style="font-size: 48px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s60" style="font-size: 60px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s72" style="font-size: 72px;">The quick brown fox jumps over the lazy dog.</p>
</div>
</div>
<div class="demo" style="font-family: 'Visuelt Pro'; font-weight: bold; font-style: normal;">
<h1>VisueltPro-Bold</h1>
<pre>.your-style {
font-family: 'Visuelt Pro';
font-weight: bold;
font-style: normal;
}</pre>
<div class="font-container">
<p class="letters">
abcdefghijklmnopqrstuvwxyz<br>
ABCDEFGHIJKLMNOPQRSTUVWXYZ<br>
0123456789.:,;()*!?'@#<>$%&^+-=~
</p>
<p class="s10" style="font-size: 10px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s11" style="font-size: 11px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s12" style="font-size: 12px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s14" style="font-size: 14px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s18" style="font-size: 18px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s24" style="font-size: 24px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s30" style="font-size: 30px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s36" style="font-size: 36px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s48" style="font-size: 48px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s60" style="font-size: 60px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s72" style="font-size: 72px;">The quick brown fox jumps over the lazy dog.</p>
</div>
</div>
<div class="demo" style="font-family: 'Visuelt Pro'; font-weight: 200; font-style: normal;">
<h1>VisueltPro-ExtraLight</h1>
<pre>.your-style {
font-family: 'Visuelt Pro';
font-weight: 200;
font-style: normal;
}</pre>
<div class="font-container">
<p class="letters">
abcdefghijklmnopqrstuvwxyz<br>
ABCDEFGHIJKLMNOPQRSTUVWXYZ<br>
0123456789.:,;()*!?'@#<>$%&^+-=~
</p>
<p class="s10" style="font-size: 10px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s11" style="font-size: 11px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s12" style="font-size: 12px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s14" style="font-size: 14px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s18" style="font-size: 18px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s24" style="font-size: 24px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s30" style="font-size: 30px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s36" style="font-size: 36px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s48" style="font-size: 48px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s60" style="font-size: 60px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s72" style="font-size: 72px;">The quick brown fox jumps over the lazy dog.</p>
</div>
</div>
<div class="demo" style="font-family: 'Visuelt Pro'; font-weight: 100; font-style: normal;">
<h1>VisueltPro-Thin</h1>
<pre>.your-style {
font-family: 'Visuelt Pro';
font-weight: 100;
font-style: normal;
}</pre>
<div class="font-container">
<p class="letters">
abcdefghijklmnopqrstuvwxyz<br>
ABCDEFGHIJKLMNOPQRSTUVWXYZ<br>
0123456789.:,;()*!?'@#<>$%&^+-=~
</p>
<p class="s10" style="font-size: 10px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s11" style="font-size: 11px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s12" style="font-size: 12px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s14" style="font-size: 14px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s18" style="font-size: 18px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s24" style="font-size: 24px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s30" style="font-size: 30px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s36" style="font-size: 36px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s48" style="font-size: 48px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s60" style="font-size: 60px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s72" style="font-size: 72px;">The quick brown fox jumps over the lazy dog.</p>
</div>
</div>
<div class="demo" style="font-family: 'Visuelt Pro'; font-weight: normal; font-style: italic;">
<h1>VisueltPro-Italic</h1>
<pre>.your-style {
font-family: 'Visuelt Pro';
font-weight: normal;
font-style: italic;
}</pre>
<div class="font-container">
<p class="letters">
abcdefghijklmnopqrstuvwxyz<br>
ABCDEFGHIJKLMNOPQRSTUVWXYZ<br>
0123456789.:,;()*!?'@#<>$%&^+-=~
</p>
<p class="s10" style="font-size: 10px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s11" style="font-size: 11px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s12" style="font-size: 12px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s14" style="font-size: 14px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s18" style="font-size: 18px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s24" style="font-size: 24px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s30" style="font-size: 30px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s36" style="font-size: 36px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s48" style="font-size: 48px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s60" style="font-size: 60px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s72" style="font-size: 72px;">The quick brown fox jumps over the lazy dog.</p>
</div>
</div>
<div class="demo" style="font-family: 'Visuelt Pro'; font-weight: 200; font-style: italic;">
<h1>VisueltPro-ExtraLightItalic</h1>
<pre>.your-style {
font-family: 'Visuelt Pro';
font-weight: 200;
font-style: italic;
}</pre>
<div class="font-container">
<p class="letters">
abcdefghijklmnopqrstuvwxyz<br>
ABCDEFGHIJKLMNOPQRSTUVWXYZ<br>
0123456789.:,;()*!?'@#<>$%&^+-=~
</p>
<p class="s10" style="font-size: 10px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s11" style="font-size: 11px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s12" style="font-size: 12px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s14" style="font-size: 14px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s18" style="font-size: 18px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s24" style="font-size: 24px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s30" style="font-size: 30px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s36" style="font-size: 36px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s48" style="font-size: 48px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s60" style="font-size: 60px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s72" style="font-size: 72px;">The quick brown fox jumps over the lazy dog.</p>
</div>
</div>
<div class="demo" style="font-family: 'Visuelt Pro'; font-weight: bold; font-style: italic;">
<h1>VisueltPro-BoldItalic</h1>
<pre>.your-style {
font-family: 'Visuelt Pro';
font-weight: bold;
font-style: italic;
}</pre>
<div class="font-container">
<p class="letters">
abcdefghijklmnopqrstuvwxyz<br>
ABCDEFGHIJKLMNOPQRSTUVWXYZ<br>
0123456789.:,;()*!?'@#<>$%&^+-=~
</p>
<p class="s10" style="font-size: 10px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s11" style="font-size: 11px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s12" style="font-size: 12px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s14" style="font-size: 14px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s18" style="font-size: 18px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s24" style="font-size: 24px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s30" style="font-size: 30px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s36" style="font-size: 36px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s48" style="font-size: 48px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s60" style="font-size: 60px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s72" style="font-size: 72px;">The quick brown fox jumps over the lazy dog.</p>
</div>
</div>
<div class="demo" style="font-family: 'Visuelt Pro'; font-weight: 900; font-style: normal;">
<h1>VisueltPro-Black</h1>
<pre>.your-style {
font-family: 'Visuelt Pro';
font-weight: 900;
font-style: normal;
}</pre>
<div class="font-container">
<p class="letters">
abcdefghijklmnopqrstuvwxyz<br>
ABCDEFGHIJKLMNOPQRSTUVWXYZ<br>
0123456789.:,;()*!?'@#<>$%&^+-=~
</p>
<p class="s10" style="font-size: 10px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s11" style="font-size: 11px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s12" style="font-size: 12px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s14" style="font-size: 14px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s18" style="font-size: 18px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s24" style="font-size: 24px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s30" style="font-size: 30px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s36" style="font-size: 36px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s48" style="font-size: 48px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s60" style="font-size: 60px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s72" style="font-size: 72px;">The quick brown fox jumps over the lazy dog.</p>
</div>
</div>
<div class="demo" style="font-family: 'Visuelt Pro'; font-weight: 500; font-style: italic;">
<h1>VisueltPro-MediumItalic</h1>
<pre>.your-style {
font-family: 'Visuelt Pro';
font-weight: 500;
font-style: italic;
}</pre>
<div class="font-container">
<p class="letters">
abcdefghijklmnopqrstuvwxyz<br>
ABCDEFGHIJKLMNOPQRSTUVWXYZ<br>
0123456789.:,;()*!?'@#<>$%&^+-=~
</p>
<p class="s10" style="font-size: 10px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s11" style="font-size: 11px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s12" style="font-size: 12px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s14" style="font-size: 14px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s18" style="font-size: 18px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s24" style="font-size: 24px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s30" style="font-size: 30px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s36" style="font-size: 36px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s48" style="font-size: 48px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s60" style="font-size: 60px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s72" style="font-size: 72px;">The quick brown fox jumps over the lazy dog.</p>
</div>
</div>
<div class="demo" style="font-family: 'Visuelt Pro'; font-weight: 300; font-style: normal;">
<h1>VisueltPro-Light</h1>
<pre>.your-style {
font-family: 'Visuelt Pro';
font-weight: 300;
font-style: normal;
}</pre>
<div class="font-container">
<p class="letters">
abcdefghijklmnopqrstuvwxyz<br>
ABCDEFGHIJKLMNOPQRSTUVWXYZ<br>
0123456789.:,;()*!?'@#<>$%&^+-=~
</p>
<p class="s10" style="font-size: 10px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s11" style="font-size: 11px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s12" style="font-size: 12px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s14" style="font-size: 14px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s18" style="font-size: 18px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s24" style="font-size: 24px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s30" style="font-size: 30px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s36" style="font-size: 36px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s48" style="font-size: 48px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s60" style="font-size: 60px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s72" style="font-size: 72px;">The quick brown fox jumps over the lazy dog.</p>
</div>
</div>
<div class="demo" style="font-family: 'Visuelt Pro'; font-weight: 900; font-style: italic;">
<h1>VisueltPro-BlackItalic</h1>
<pre>.your-style {
font-family: 'Visuelt Pro';
font-weight: 900;
font-style: italic;
}</pre>
<div class="font-container">
<p class="letters">
abcdefghijklmnopqrstuvwxyz<br>
ABCDEFGHIJKLMNOPQRSTUVWXYZ<br>
0123456789.:,;()*!?'@#<>$%&^+-=~
</p>
<p class="s10" style="font-size: 10px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s11" style="font-size: 11px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s12" style="font-size: 12px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s14" style="font-size: 14px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s18" style="font-size: 18px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s24" style="font-size: 24px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s30" style="font-size: 30px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s36" style="font-size: 36px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s48" style="font-size: 48px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s60" style="font-size: 60px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s72" style="font-size: 72px;">The quick brown fox jumps over the lazy dog.</p>
</div>
</div>
<div class="demo" style="font-family: 'Visuelt Pro'; font-weight: 300; font-style: italic;">
<h1>VisueltPro-LightItalic</h1>
<pre>.your-style {
font-family: 'Visuelt Pro';
font-weight: 300;
font-style: italic;
}</pre>
<div class="font-container">
<p class="letters">
abcdefghijklmnopqrstuvwxyz<br>
ABCDEFGHIJKLMNOPQRSTUVWXYZ<br>
0123456789.:,;()*!?'@#<>$%&^+-=~
</p>
<p class="s10" style="font-size: 10px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s11" style="font-size: 11px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s12" style="font-size: 12px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s14" style="font-size: 14px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s18" style="font-size: 18px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s24" style="font-size: 24px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s30" style="font-size: 30px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s36" style="font-size: 36px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s48" style="font-size: 48px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s60" style="font-size: 60px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s72" style="font-size: 72px;">The quick brown fox jumps over the lazy dog.</p>
</div>
</div>
<div class="demo" style="font-family: 'Visuelt Pro'; font-weight: 100; font-style: italic;">
<h1>VisueltPro-ThinItalic</h1>
<pre>.your-style {
font-family: 'Visuelt Pro';
font-weight: 100;
font-style: italic;
}</pre>
<div class="font-container">
<p class="letters">
abcdefghijklmnopqrstuvwxyz<br>
ABCDEFGHIJKLMNOPQRSTUVWXYZ<br>
0123456789.:,;()*!?'@#<>$%&^+-=~
</p>
<p class="s10" style="font-size: 10px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s11" style="font-size: 11px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s12" style="font-size: 12px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s14" style="font-size: 14px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s18" style="font-size: 18px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s24" style="font-size: 24px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s30" style="font-size: 30px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s36" style="font-size: 36px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s48" style="font-size: 48px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s60" style="font-size: 60px;">The quick brown fox jumps over the lazy dog.</p>
<p class="s72" style="font-size: 72px;">The quick brown fox jumps over the lazy dog.</p>
</div>
</div>
</div>
</body>
</html>

Binary file not shown.

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 434 KiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

168
public/fonts/stylesheet.css Normal file
View File

@ -0,0 +1,168 @@
@font-face {
font-family: 'Visuelt Pro';
src: url('VisueltPro-Medium.eot');
src: local('VisueltPro-Medium'),
url('VisueltPro-Medium.eot?#iefix') format('embedded-opentype'),
url('VisueltPro-Medium.woff2') format('woff2'),
url('VisueltPro-Medium.woff') format('woff'),
url('VisueltPro-Medium.ttf') format('truetype');
font-weight: 500;
font-style: normal;
}
@font-face {
font-family: 'Visuelt Pro';
src: url('VisueltPro-Regular.eot');
src: local('VisueltPro-Regular'),
url('VisueltPro-Regular.eot?#iefix') format('embedded-opentype'),
url('VisueltPro-Regular.woff2') format('woff2'),
url('VisueltPro-Regular.woff') format('woff'),
url('VisueltPro-Regular.ttf') format('truetype');
font-weight: normal;
font-style: normal;
}
@font-face {
font-family: 'Visuelt Pro';
src: url('VisueltPro-Bold.eot');
src: local('VisueltPro-Bold'),
url('VisueltPro-Bold.eot?#iefix') format('embedded-opentype'),
url('VisueltPro-Bold.woff2') format('woff2'),
url('VisueltPro-Bold.woff') format('woff'),
url('VisueltPro-Bold.ttf') format('truetype');
font-weight: bold;
font-style: normal;
}
@font-face {
font-family: 'Visuelt Pro';
src: url('VisueltPro-ExtraLight.eot');
src: local('VisueltPro-ExtraLight'),
url('VisueltPro-ExtraLight.eot?#iefix') format('embedded-opentype'),
url('VisueltPro-ExtraLight.woff2') format('woff2'),
url('VisueltPro-ExtraLight.woff') format('woff'),
url('VisueltPro-ExtraLight.ttf') format('truetype');
font-weight: 200;
font-style: normal;
}
@font-face {
font-family: 'Visuelt Pro';
src: url('VisueltPro-Thin.eot');
src: local('VisueltPro-Thin'),
url('VisueltPro-Thin.eot?#iefix') format('embedded-opentype'),
url('VisueltPro-Thin.woff2') format('woff2'),
url('VisueltPro-Thin.woff') format('woff'),
url('VisueltPro-Thin.ttf') format('truetype');
font-weight: 100;
font-style: normal;
}
@font-face {
font-family: 'Visuelt Pro';
src: url('VisueltPro-Italic.eot');
src: local('VisueltPro-Italic'),
url('VisueltPro-Italic.eot?#iefix') format('embedded-opentype'),
url('VisueltPro-Italic.woff2') format('woff2'),
url('VisueltPro-Italic.woff') format('woff'),
url('VisueltPro-Italic.ttf') format('truetype');
font-weight: normal;
font-style: italic;
}
@font-face {
font-family: 'Visuelt Pro';
src: url('VisueltPro-ExtraLightItalic.eot');
src: local('VisueltPro-ExtraLightItalic'),
url('VisueltPro-ExtraLightItalic.eot?#iefix') format('embedded-opentype'),
url('VisueltPro-ExtraLightItalic.woff2') format('woff2'),
url('VisueltPro-ExtraLightItalic.woff') format('woff'),
url('VisueltPro-ExtraLightItalic.ttf') format('truetype');
font-weight: 200;
font-style: italic;
}
@font-face {
font-family: 'Visuelt Pro';
src: url('VisueltPro-BoldItalic.eot');
src: local('VisueltPro-BoldItalic'),
url('VisueltPro-BoldItalic.eot?#iefix') format('embedded-opentype'),
url('VisueltPro-BoldItalic.woff2') format('woff2'),
url('VisueltPro-BoldItalic.woff') format('woff'),
url('VisueltPro-BoldItalic.ttf') format('truetype');
font-weight: bold;
font-style: italic;
}
@font-face {
font-family: 'Visuelt Pro';
src: url('VisueltPro-Black.eot');
src: local('VisueltPro-Black'),
url('VisueltPro-Black.eot?#iefix') format('embedded-opentype'),
url('VisueltPro-Black.woff2') format('woff2'),
url('VisueltPro-Black.woff') format('woff'),
url('VisueltPro-Black.ttf') format('truetype');
font-weight: 900;
font-style: normal;
}
@font-face {
font-family: 'Visuelt Pro';
src: url('VisueltPro-MediumItalic.eot');
src: local('VisueltPro-MediumItalic'),
url('VisueltPro-MediumItalic.eot?#iefix') format('embedded-opentype'),
url('VisueltPro-MediumItalic.woff2') format('woff2'),
url('VisueltPro-MediumItalic.woff') format('woff'),
url('VisueltPro-MediumItalic.ttf') format('truetype');
font-weight: 500;
font-style: italic;
}
@font-face {
font-family: 'Visuelt Pro';
src: url('VisueltPro-Light.eot');
src: local('VisueltPro-Light'),
url('VisueltPro-Light.eot?#iefix') format('embedded-opentype'),
url('VisueltPro-Light.woff2') format('woff2'),
url('VisueltPro-Light.woff') format('woff'),
url('VisueltPro-Light.ttf') format('truetype');
font-weight: 300;
font-style: normal;
}
@font-face {
font-family: 'Visuelt Pro';
src: url('VisueltPro-BlackItalic.eot');
src: local('VisueltPro-BlackItalic'),
url('VisueltPro-BlackItalic.eot?#iefix') format('embedded-opentype'),
url('VisueltPro-BlackItalic.woff2') format('woff2'),
url('VisueltPro-BlackItalic.woff') format('woff'),
url('VisueltPro-BlackItalic.ttf') format('truetype');
font-weight: 900;
font-style: italic;
}
@font-face {
font-family: 'Visuelt Pro';
src: url('VisueltPro-LightItalic.eot');
src: local('VisueltPro-LightItalic'),
url('VisueltPro-LightItalic.eot?#iefix') format('embedded-opentype'),
url('VisueltPro-LightItalic.woff2') format('woff2'),
url('VisueltPro-LightItalic.woff') format('woff'),
url('VisueltPro-LightItalic.ttf') format('truetype');
font-weight: 300;
font-style: italic;
}
@font-face {
font-family: 'Visuelt Pro';
src: url('VisueltPro-ThinItalic.eot');
src: local('VisueltPro-ThinItalic'),
url('VisueltPro-ThinItalic.eot?#iefix') format('embedded-opentype'),
url('VisueltPro-ThinItalic.woff2') format('woff2'),
url('VisueltPro-ThinItalic.woff') format('woff'),
url('VisueltPro-ThinItalic.ttf') format('truetype');
font-weight: 100;
font-style: italic;
}

BIN
public/img/carbon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 289 B

BIN
public/img/icon.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 79 KiB

BIN
public/img/proxy.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 322 KiB

BIN
public/img/proxy_icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

BIN
public/img/proxy_small.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

95
public/js/bulma.js Normal file
View File

@ -0,0 +1,95 @@
$( document ).ready(function() {
$('input[name="datetimes"]').daterangepicker({
timePicker: true,
startDate: $('#dater').data('start'),
endDate: $('#dater').data('end'),
timePicker24Hour: true,
locale: {
format: 'YYYY-MM-DD HH:mm:ss',
separator: ' > ',
applyLabel: 'Применить',
cancelLabel: 'Отменить',
fromLabel: 'С',
toLabel: 'По',
weekLabel: 'Н',
daysOfWeek: [
'Вск',
'Пнд',
'Втр',
'Срд',
'Чтв',
'Птн',
'Сбт'
],
monthNames: [
'Январь',
'Февраль',
'Март',
'Апрель',
'Май',
'Июнь',
'Июль',
'Август',
'Сентябрь',
'Октябрь',
'Ноябрь',
'Декабрь'
],
firstDay: 1
}
});
Chart.defaults.color = '#FFF';
Chart.defaults.borderColor = '#555';
new Chart($('#daystats'), {
type: 'bar',
data: {
labels: $('#daystats').data('labels'),
datasets: [{
label: 'Температура сусла',
data: $('#daystats').data('vals'),
borderWidth: 1,
backgroundColor: [
'rgb(255, 99, 132)',
'rgb(54, 162, 235)',
'rgb(255, 205, 86)'
],
}]
},
options: {
scales: {
y: {
beginAtZero: true
}
}
}
});
new Chart($('#daystats1'), {
type: 'bar',
data: {
labels: $('#daystats1').data('labels'),
datasets: [{
label: 'Температура сусла',
data: $('#daystats1').data('vals'),
borderWidth: 1,
backgroundColor: [
'rgb(255, 99, 132)',
'rgb(54, 162, 235)',
'rgb(255, 205, 86)'
],
}]
},
options: {
scales: {
y: {
beginAtZero: true
}
}
}
});
});

13
public/js/chart.min.js vendored Normal file

File diff suppressed because one or more lines are too long

8
public/js/daterangepicker.min.js vendored Normal file

File diff suppressed because one or more lines are too long

2
public/js/jquery-3.3.1.min.js vendored Normal file

File diff suppressed because one or more lines are too long

7
public/js/moment.min.js vendored Normal file

File diff suppressed because one or more lines are too long

16
sqlite3/tank.lua Normal file
View File

@ -0,0 +1,16 @@
local sqlite3 = require("lsqlite3")
local json = require("cjson")
local db = sqlite3.open(ngx.var.document_root..'/sqlite3/tanks.db')
local _M = {}
function _M.oktmo(oktmo)
local results = {}
for row in db:nrows("SELECT * FROM points WHERE oktmo = '"..tostring(oktmo).."'") do table.insert(results,row) end
db:close()
if not results[1] then return nil end
return results[1]
end
return _M

25
templates/add.html Normal file
View File

@ -0,0 +1,25 @@
<section class="container">
<h1 class="title">{{title}}</h1>
<div class="section">
<form id="add-tank-form" method="post" action="/save_tank">
<input type="hidden" name="id" value="">
<!-- Основные поля -->
<div class="columns">
<div class="column is-half">
<label for="tank_name">Название емкости:</label>
<input class="input" type="text" name="tank_name" placeholder="Имя емкости">
<label for="device_id">ID блока датчиков:</label>
<input class="input" type="input" name="device_id">
</div>
<div class="column is-half">
<label for="comments">Комментарии:</label>
<textarea class="textarea" name="comments" rows="3" placeholder="Дополнительная информация..."></textarea>
</div>
</div>
</section>

Some files were not shown because too many files have changed in this diff Show More