Compare commits
9 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 6079f5bc3e | |||
| 629ac13a25 | |||
| 2b582c8700 | |||
| fd55fa9703 | |||
| 08e13d4f23 | |||
| 7c3eadc8cf | |||
| e7f8b8d76a | |||
| d6ac8a9e16 | |||
| c7cfb0e411 |
+5
-4
@@ -406,7 +406,7 @@ def _is_inventory_module_path(path):
|
||||
if not path:
|
||||
return False
|
||||
|
||||
if path == '/' or path == '/home':
|
||||
if path == '/' or path.startswith('/home'):
|
||||
return True
|
||||
|
||||
inventory_prefixes = (
|
||||
@@ -416,7 +416,10 @@ def _is_inventory_module_path(path):
|
||||
'/manage_filters',
|
||||
'/manage_locations',
|
||||
'/admin_borrowings',
|
||||
'/admin_damaged_items'
|
||||
'/admin_damaged_items',
|
||||
'/admin/borrowings',
|
||||
'/admin/damaged_items',
|
||||
'/terminplan',
|
||||
)
|
||||
return path.startswith(inventory_prefixes)
|
||||
|
||||
@@ -434,8 +437,6 @@ def _enforce_module_access():
|
||||
|
||||
def _get_current_module(path):
|
||||
"""Resolve the active UI module for navbar separation."""
|
||||
# Check if referer indicates we came from library
|
||||
referrer = request.referrer or ''
|
||||
|
||||
if cfg.LIBRARY_MODULE_ENABLED and _is_library_module_path(path):
|
||||
session['last_module'] = 'library'
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 273 KiB |
@@ -1268,7 +1268,9 @@
|
||||
{% else %}
|
||||
<nav class="navbar navbar-expand-lg navbar-dark" id="loginNavbar">
|
||||
<div class="container-fluid">
|
||||
<a class="navbar-brand" href="{{ url_for('home') }}" data-icon="🔹">Invario</a>
|
||||
<a class="navbar-brand py-0" href="{{ url_for('home') }}">
|
||||
<img src="{{ url_for('static', filename='img/invario-logo.png') }}" alt="Invario" height="120" class="d-inline-block align-top" style="filter: drop-shadow(0px 0px 2px rgba(255,255,255,0.5));">
|
||||
</a>
|
||||
<ul class="navbar-nav ms-auto mb-2 mb-lg-0">
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ url_for('impressum') }}">Impressum</a>
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
services:
|
||||
# Management Container for multi-tenant scripts
|
||||
tenant-manager:
|
||||
image: docker:cli
|
||||
image: python:3.12-alpine
|
||||
container_name: tenant-manager
|
||||
restart: "no"
|
||||
profiles:
|
||||
@@ -19,7 +19,8 @@ services:
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
- .:/workspace
|
||||
entrypoint: ["sh", "-c", "cd /workspace && ./manage-tenant.sh \"$$@\"", "--"]
|
||||
entrypoint: >
|
||||
sh -c "apk add --no-cache bash docker-cli docker-cli-compose && cd /workspace && ./manage-tenant.sh \"$$@\"" --
|
||||
|
||||
redis:
|
||||
image: redis:7-alpine
|
||||
|
||||
@@ -176,6 +176,10 @@ EOF
|
||||
restart_app_container() {
|
||||
local env_file="$PWD/.docker-build.env"
|
||||
local compose_args=( -f "$PWD/docker-compose-multitenant.yml" )
|
||||
# Pass along COMPOSE_PROJECT_NAME if set so the internal docker-compose sees it
|
||||
if [ -n "$COMPOSE_PROJECT_NAME" ]; then
|
||||
compose_args=( -p "$COMPOSE_PROJECT_NAME" "${compose_args[@]}" )
|
||||
fi
|
||||
|
||||
if [ -f "$PWD/.docker-compose.runtime.override.yml" ]; then
|
||||
compose_args+=( -f "$PWD/.docker-compose.runtime.override.yml" )
|
||||
|
||||
+2
-1
@@ -1,3 +1,4 @@
|
||||
#!/bin/bash
|
||||
# Wrapper to run tenant management fully containerized via docker-compose
|
||||
docker compose -f docker-compose-multitenant.yml --profile tools run --rm tenant-manager "$@"
|
||||
PROJECT_NAME=${COMPOSE_PROJECT_NAME:-$(basename "$PWD" | tr '[:upper:]' '[:lower:]')}
|
||||
docker compose -f docker-compose-multitenant.yml --profile tools run --rm -e COMPOSE_PROJECT_NAME="$PROJECT_NAME" tenant-manager "$@"
|
||||
|
||||
Reference in New Issue
Block a user