Remove site_config file & add templates_local

This commit is contained in:
Nyymix 2025-05-03 00:11:05 +03:00
parent 8c11e02d9c
commit e37c412fd9
9 changed files with 24 additions and 76 deletions

2
.gitignore vendored
View file

@ -1,5 +1,7 @@
# ---> Muistox # ---> Muistox
media/ media/
templates_local/
# ---> Python # ---> Python
# Byte-compiled / optimized / DLL files # Byte-compiled / optimized / DLL files

View file

@ -43,6 +43,10 @@ TEMPLATES = [
{ {
'BACKEND': 'django.template.backends.django.DjangoTemplates', 'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [BASE_DIR / "templates"], 'DIRS': [BASE_DIR / "templates"],
'DIRS': [
BASE_DIR / "templates_local",
BASE_DIR / "templates",
],
'APP_DIRS': True, 'APP_DIRS': True,
'OPTIONS': { 'OPTIONS': {
'context_processors': [ 'context_processors': [
@ -50,7 +54,6 @@ TEMPLATES = [
'django.template.context_processors.request', 'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth', 'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages', 'django.contrib.messages.context_processors.messages',
'gallery.context_processors.site_config',
], ],
}, },
}, },
@ -98,9 +101,8 @@ TIME_ZONE = 'UTC'
USE_I18N = True USE_I18N = True
#USE_TZ = True # USE_L10N = True
USE_TZ = False # USE_TZ = False
# Static files (CSS, JavaScript, Images) # Static files (CSS, JavaScript, Images)
@ -130,8 +132,8 @@ DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField'
# Sessions # Sessions
SESSION_COOKIE_AGE = 60 * 60 * 24 * 365 * 5 # 5 vuotta SESSION_COOKIE_AGE = 60 * 60 * 24 * 365 * 5 # 5 vuotta
SESSION_EXPIRE_AT_BROWSER_CLOSE = False SESSION_EXPIRE_AT_BROWSER_CLOSE = False
SESSION_COOKIE_SECURE = True
SESSION_COOKIE_SAMESITE = 'Lax' SESSION_COOKIE_SAMESITE = 'Lax'
SESSION_CACHE_ALIAS = "default"
# Sessio backend: cache + fallback tietokantaan # Sessio backend: cache + fallback tietokantaan
SESSION_ENGINE = 'django.contrib.sessions.backends.cached_db' SESSION_ENGINE = 'django.contrib.sessions.backends.cached_db'
@ -143,7 +145,8 @@ CACHES = {
"LOCATION": "redis://127.0.0.1:6379/1", "LOCATION": "redis://127.0.0.1:6379/1",
"OPTIONS": { "OPTIONS": {
"CLIENT_CLASS": "django_redis.client.DefaultClient", "CLIENT_CLASS": "django_redis.client.DefaultClient",
} },
'KEY_PREFIX': 'session',
} }
} }

View file

@ -1,18 +0,0 @@
{
"site_head_title": "Gallery",
"site_head_description": "Muistox Photo Gallery",
"title": "Gallery",
"description": "Just another wannabe photographer...",
"footer_copyright": "Powered by <a href='https://git.hakkeri.net/nyymix/muistox'>muistox</a>.",
"about_title": "Muistox gallery",
"about_description": "Just another wannabe photographer...",
"about_profile_image": "img/default.png",
"contact_email": "muistox@gallery.invalid",
"bluesky_url": "https://bsky.app/",
"twitter_url": "https://twitter.com/",
"instagram_url": "https://www.instagram.com/"
}

View file

@ -1,20 +0,0 @@
import json
from pathlib import Path
from django.conf import settings
from django.core.cache import cache
def site_config(request):
config = cache.get('site_config')
if not config:
config_path = Path(settings.BASE_DIR) / 'config' / 'site_config.json'
try:
with open(config_path, 'r') as f:
config = json.load(f)
cache.set('site_config', config, 3600)
except FileNotFoundError:
config = {}
return {'site_config': config}

View file

@ -27,35 +27,16 @@
<div class="uk-width-1-1"> <div class="uk-width-1-1">
<div class="uk-card uk-card-default uk-card-body uk-text-center"> <div class="uk-card uk-card-default uk-card-body uk-text-center">
<h3 class="uk-card-title">{{ site_config.about_title }}</h3> <h3 class="uk-card-title">Muistox gallery</h3>
<img class="uk-border-circle uk-box-shadow-small uk-margin-small" <img class="uk-border-circle uk-box-shadow-small uk-margin-small"
src="{% static site_config.about_profile_image %}" src="{% static "img/default.png" %}"
alt="Profile photo" width="120"> alt="Profile photo" width="120">
<p class="uk-text-muted uk-margin-small"> <p class="uk-text-muted uk-margin-small">
{{ site_config.about_description }} Just another wannabe photographer...
</p> </p>
<p class="uk-text-muted uk-margin-small">
Contact:
<a href="mailto:{{ site_config.contact_email }}">
{{ site_config.contact_email }}
</a>
</p>
<div class="uk-flex uk-flex-center uk-child-width-auto uk-margin-small-top" uk-grid>
{% if site_config.bluesky_url %}
<a href="{{ site_config.bluesky_url }}" uk-icon="icon: bluesky" uk-tooltip="Bluesky"></a>
{% endif %}
{% if site_config.twitter_url %}
<a href="{{ site_config.twitter_url }}" uk-icon="icon: twitter" uk-tooltip="Twitter"></a>
{% endif %}
{% if site_config.instagram_url %}
<a href="{{ site_config.instagram_url }}" uk-icon="icon: instagram" uk-tooltip="Instagram"></a>
{% endif %}
</div>
<hr class="uk-divider-icon"> <hr class="uk-divider-icon">
<div class="uk-text-small uk-text-muted"> <div class="uk-text-small uk-text-muted">

View file

@ -3,7 +3,7 @@
{% load image_tags %} {% load image_tags %}
<!-- Title --> <!-- Title -->
{% block title %}{{ site_config.description }}{% endblock %} {% block title %}Home{% endblock %}
<!-- Parallax --> <!-- Parallax -->
{% block parallax %} {% block parallax %}

View file

@ -36,9 +36,9 @@
<a class="uk-position-center-left uk-position-small uk-hidden-hover" href="#" uk-slidenav-previous uk-slideshow-item="previous"></a> <a class="uk-position-center-left uk-position-small uk-hidden-hover" href="#" uk-slidenav-previous uk-slideshow-item="previous"></a>
<a class="uk-position-center-right uk-position-small uk-hidden-hover" href="#" uk-slidenav-next uk-slideshow-item="next"></a> <a class="uk-position-center-right uk-position-small uk-hidden-hover" href="#" uk-slidenav-next uk-slideshow-item="next"></a>
<div class="uk-position-top uk-padding-small"> <div class="uk-position-top uk-padding-small">
<h1>{{ site_config.title }}</h1> <h1>Gallery</h1>
</div> </div>
<div class="uk-overlay uk-overlay-primary uk-position-bottom uk-padding-small"> <div class="uk-overlay uk-overlay-primary uk-position-bottom uk-padding-small">
<p class="uk-text-small uk-margin-remove-top">{{ site_config.description }}</p> <p class="uk-text-small uk-margin-remove-top">Just another wannabe photographer...</p>
</div> </div>
</div> </div>

View file

@ -4,8 +4,8 @@
{% load static %} {% load static %}
<meta charset="UTF-8"> <meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="{{ site_config.site_head_description }}"> <meta name="description" content="Muistox Photo Gallery">
<title>{{ site_config.site_head_title }} : Slideshow : {{ photo.album.name }}</title> <title>Slideshow : {{ photo.album.name }} - Gallery</title>
{% if next_photo %} {% if next_photo %}
<meta http-equiv="refresh" content="5; url={% url 'gallery:photo_slideshow_url' next_photo.album.slug next_photo.slug %}" /> <meta http-equiv="refresh" content="5; url={% url 'gallery:photo_slideshow_url' next_photo.album.slug next_photo.slug %}" />
{% endif %} {% endif %}

View file

@ -5,8 +5,8 @@
{% load static %} {% load static %}
<meta charset="UTF-8"> <meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="{{ site_config.site_head_description }}"> <meta name="description" content="Muistox Photo Gallery">
<title>{% block title %}{% endblock %} - {{ site_config.site_head_title }}</title> <title>{% block title %}{% endblock %} - Gallery</title>
{% if canonical_url %} {% if canonical_url %}
<link rel="canonical" href="{{ canonical_url }}"> <link rel="canonical" href="{{ canonical_url }}">
{% endif %} {% endif %}
@ -86,7 +86,7 @@
<!-- Footer --> <!-- Footer -->
<footer class="uk-align-center uk-container-large"> <footer class="uk-align-center uk-container-large">
<div class="uk-background-secondary uk-padding-small uk-light uk-text-center uk-text-light"> <div class="uk-background-secondary uk-padding-small uk-light uk-text-center uk-text-light">
&copy; {% now "Y" %} {{ site_config.footer_copyright|safe }} &copy; {% now "Y" %} Powered by <a href="https://git.hakkeri.net/nyymix/muistox">muistox</a>.
</div> </div>
</footer> </footer>