Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • acides/hiboo
  • frju365/hiboo
  • pascoual/hiboo
  • thedarky/hiboo
  • jeremy/hiboo
  • cyrinux/hiboo
  • a.f/hiboo
  • mickge/hiboo
  • llaq/hiboo
  • vaguelysalaried/hiboo
  • felinn-glotte/hiboo
  • AntoninDelFabbro/hiboo
  • docemmetbrown/hiboo
13 results
Show changes
Commits on Source (19)
......@@ -19,7 +19,8 @@ pre {
.theme-switch {
display: inline-block;
height: 24px;
position: relative;
position: absolute;
top: 5px;
width: 50px;
}
......@@ -68,3 +69,9 @@ input:checked + .slider::before {
.table-responsive {
max-height: 70vh;
}
.action-block {
display: flex;
flex-wrap: wrap;
gap: 4px;
}
// FA
import 'admin-lte/plugins/fontawesome-free/css/fontawesome.css';
import 'admin-lte/plugins/fontawesome-free/css/regular.css';
import 'admin-lte/plugins/fontawesome-free/css/solid.css';
import 'admin-lte/plugins/fontawesome-free/css/fontawesome.min.css';
import 'admin-lte/plugins/fontawesome-free/css/solid.min.css';
// AdminLTE
import 'admin-lte/build/scss/adminlte.scss';
import 'admin-lte/build/js/Layout.js';
import 'admin-lte/build/js/ControlSidebar.js';
import 'admin-lte/build/js/PushMenu.js';
import 'admin-lte/build/js/CardRefresh.js';
......@@ -12,7 +12,7 @@ class LoginForm(flask_wtf.FlaskForm):
class TotpForm(flask_wtf.FlaskForm):
totp = fields.PasswordField(_('Enter the one-time password delivered by your client'), [validators.DataRequired()])
totp = fields.PasswordField(_('Enter the one-time password delivered by your client'), [validators.DataRequired()], render_kw={'autocomplete': 'one-time-code'})
submit = fields.SubmitField(_('Confirm'))
......
......@@ -12,10 +12,10 @@
<dt class="col-lg-3">{% trans %}Username{% endtrans %}</dt>
<dd class="col-lg-9">{{ profile.username }}</dd>
{% if profile.user %}
{% if profile.user %}
<dt class="col-lg-3">{% trans %}Owner{% endtrans %}</dt>
<dd class="col-lg-9"><a href="{{ url_for("user.details", user_uuid=profile.user_uuid) }}">{{ profile.user.username }}</a></dd>
{% endif %}
{% endif %}
<dt class="col-lg-3">{% trans %}UUID{% endtrans %}</dt>
<dd class="col-lg-9"><pre>{{ profile.uuid }}</pre></dd>
......@@ -29,23 +29,6 @@
</div>
</div>
</div>
<div class="col-md-6 col">
<div class="card">
<div class="card-header">
<h4>{% trans %}Actions{% endtrans %}</h4>
</div>
<div class="card-body">
<dl class="row">
{% for action in profile.actions %}
<dt class="col-3"><a href="{{ action.url(profile) }}">{{ action.label | capitalize }}</a></dt>
<dd class="col-9">{{ action.description | capitalize }}</dd>
{% endfor %}
</dl>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6 col">
{{ macros.timeline(profile.history, public_only=False) }}
</div>
......
......@@ -25,12 +25,6 @@
<li class="nav-item user">
<div class="nav-link"><i class="fas fa-user"></i> {{ current_user.username }}</div>
</li>
<li class="nav-item user">
<a href="{{ url_for("account.signout") }}" class="nav-link">
<i class="fas fa-sign-out"></i>
{% trans %}Sign out{% endtrans %}
</a>
</li>
{% else %}
<li class="nav-item user">
<a href="{{ url_for("account.signin_password") }}" class="nav-link">
......@@ -39,14 +33,6 @@
</a>
</li>
{% endif %}
<li class="nav-item">
<div class="theme-switch-wrapper nav-link">
<label class="theme-switch" for="checkbox">
<input type="checkbox" id="checkbox">
<span class="slider round"></span>
</label>
</div>
</li>
</ul>
</nav>
......@@ -73,8 +59,11 @@
<small>{% block subtitle %}{{ subtitle }}{% endblock %}</small>
</h1>
<div>
<div class="action-block">
{% block actions %}
{% endblock %}
</div>
</div>
</div>
</div>
......@@ -83,7 +72,7 @@
<div class="container-fluid">
{% for category, message in get_flashed_messages(with_categories=True) or [] %}
<div class="col-md-6 col">
<div class="alert alert-{{ category or "info" }}">{{ message }}</div>
<div class="alert alert-{{ category or "info" }} text-break">{{ message }}</div>
</div>
{% endfor %}
{% if current_user.time_to_deletion and current_user.time_to_deletion() %}
......
<li class="nav-item">
<a class="nav-link">
<i class="nav-icon fas fa-moon"></i>
<p>{% trans %}Dark theme{% endtrans %}</p>
<label class="theme-switch ml-3" for="checkbox">
<input type="checkbox" id="checkbox">
<span class="slider round"></span>
</label>
</a>
</li>
{% if current_user.is_authenticated %}
<li class="nav-header">{% trans %}Account{% endtrans %}</li>
<li class="nav-item">
......@@ -25,11 +36,6 @@
<i class="nav-icon fas fa-qrcode"></i> <p>{% trans %}Two-factor authentication{% endtrans %}</p>
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="{{ url_for("account.signout") }}">
<i class="nav-icon fas fa-sign-out-alt"></i> <p>{% trans %}Sign out{% endtrans %}</p>
</a>
</li>
{% else %}
<li class="nav-item">
<a class="nav-link" href="{{ utils.url_for("account.signup") }}">
......@@ -78,3 +84,12 @@
<i class="nav-icon fas fa-book"></i> <p>{% trans %}Admin guide{% endtrans %}</p>
</a>
</li>
{% if current_user.is_authenticated %}
<li class="nav-header"></li>
<li class="nav-item">
<a class="nav-link border" href="{{ url_for("account.signout") }}">
<i class="nav-icon fas fa-power-off"></i> <p>{% trans %}Sign out{% endtrans %}</p>
</a>
</li>
{% endif %}
No preview for this file type
This diff is collapsed.
var path = require("path");
var webpack = require("webpack");
var css = require("mini-css-extract-plugin");
const path = require('path');
const webpack = require('webpack');
const css = require('mini-css-extract-plugin');
const mini = require('css-minimizer-webpack-plugin');
const terse = require('terser-webpack-plugin');
const compress = require('compression-webpack-plugin');
module.exports = {
mode: "production",
entry: {
app: "./assets/app.js",
vendor: "./assets/vendor.js"
mode: "production",
entry: {
app: {
import: './assets/app.js',
dependOn: 'vendor',
},
output: {
path: path.resolve(__dirname, "hiboo/static/"),
filename: "[name].js",
hashFunction: "xxhash64"
},
module: {
rules: [
{
test: /\.js$/,
use: ['babel-loader']
},
{
test: /\.scss$/,
use: [css.loader, 'css-loader', 'sass-loader']
},
{
test: /\.less$/,
use: [css.loader, 'css-loader', 'less-loader']
},
{
test: /\.css$/,
use: [css.loader, 'css-loader']
}
]
},
plugins: [
new css({
filename: "[name].css",
chunkFilename: "[id].css"
})
vendor: './assets/vendor.js',
},
output: {
path: path.resolve(__dirname, 'hiboo/static/'),
filename: '[name].js',
assetModuleFilename: '[name][ext]',
},
module: {
rules: [
{
test: /\.js$/,
use: ['babel-loader', 'import-glob'],
},
{
test: /\.s?css$/i,
use: [css.loader, 'css-loader', 'sass-loader'],
},
{
test: /\.(json|png|svg|jpg|jpeg|gif)$/i,
type: 'asset/resource',
}
]
},
plugins: [
new css({
filename: '[name].css',
chunkFilename: '[id].css'
}),
new compress({
filename: '[path][base].gz',
algorithm: "gzip",
exclude: /\.(png|gif|jpe?g)$/,
threshold: 5120,
minRatio: 0.8,
deleteOriginalAssets: false,
}),
],
optimization: {
minimize: true,
minimizer: [
new terse(),
new mini({
minimizerOptions: {
preset: [
'default', {
discardComments: { removeAll: true },
},
],
},
}),
],
},
}