Compare commits
9
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c9232abc4f | ||
|
|
c8afd93d72 | ||
|
|
c541ccc9a8 | ||
|
|
6e78b2e790 | ||
|
|
51b016d8fb | ||
|
|
eb07a9afef | ||
|
|
beaa5b2e5c | ||
|
|
8620dfb916 | ||
|
|
91a5b8a7f3 |
No files matched your search
@@ -0,0 +1,18 @@
|
|||||||
|
# PIVOT – afspraken voor Claude
|
||||||
|
|
||||||
|
## Versienummer bij elke commit
|
||||||
|
|
||||||
|
Het versienummer van PIVOT staat in het bestand `VERSION` (onderaan elke pagina: "PIVOT – Versie x.y.z").
|
||||||
|
|
||||||
|
**Vóór elke commit** het versienummer één stap verhogen en `VERSION` mee in de commit opnemen:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
python verhoog_versie.py
|
||||||
|
git add VERSION
|
||||||
|
```
|
||||||
|
|
||||||
|
- Eén verhoging per commit, niet per gewijzigd bestand.
|
||||||
|
- Regels: het laatste cijfer telt op tot 99, daarna gaat het middelste cijfer omhoog (`1.1.99` → `1.2.0`); het middelste cijfer gaat ook tot 99 (`1.99.99` → `2.0.0`). Het eerste cijfer heeft geen maximum.
|
||||||
|
- Nooit `VERSION` met de hand aanpassen of nummers overslaan.
|
||||||
|
- Geeft een merge of pull een conflict in `VERSION` (twee branches verhoogden tegelijk)? Neem het **hoogste** van de twee nummers en voer daarna `python verhoog_versie.py` nog één keer uit.
|
||||||
|
- Vermeld het nieuwe nummer in de commitboodschap, bv. `Logo leesbaar maken in het donkere thema (1.1.2)`.
|
||||||
@@ -1,3 +1,5 @@
|
|||||||
|
# Voorbeeld: kopieer dit bestand naar config.ini en vul de lege waarden in.
|
||||||
|
# config.ini zelf staat NIET in git (bevat wachtwoorden).
|
||||||
# =====================================================================
|
# =====================================================================
|
||||||
# PIVOT – algemene instellingen (gelden voor ALLE scholen)
|
# PIVOT – algemene instellingen (gelden voor ALLE scholen)
|
||||||
#
|
#
|
||||||
@@ -15,8 +17,8 @@
|
|||||||
# (per school te overschrijven in het scholenregister)
|
# (per school te overschrijven in het scholenregister)
|
||||||
host = localhost
|
host = localhost
|
||||||
port = 3306
|
port = 3306
|
||||||
user = marijn
|
user =
|
||||||
password =8778Zappa4861!
|
password =
|
||||||
# Database met de lijst van scholen (wordt automatisch ingericht)
|
# Database met de lijst van scholen (wordt automatisch ingericht)
|
||||||
centrale_database = pivot
|
centrale_database = pivot
|
||||||
|
|
||||||
@@ -27,6 +27,15 @@ def _get(section, key, fallback='', env=None):
|
|||||||
return config_file.get(section, key, fallback=fallback)
|
return config_file.get(section, key, fallback=fallback)
|
||||||
|
|
||||||
|
|
||||||
|
def _versie():
|
||||||
|
"""Versienummer uit het bestand VERSION (wordt bij elke commit verhoogd met verhoog_versie.py, zie CLAUDE.md)."""
|
||||||
|
try:
|
||||||
|
with open(os.path.join(base_dir, 'VERSION'), encoding='utf-8') as f:
|
||||||
|
return f.read().strip()
|
||||||
|
except OSError:
|
||||||
|
return _get('algemeen', 'app_version', 'onbekend')
|
||||||
|
|
||||||
|
|
||||||
def _secret_key():
|
def _secret_key():
|
||||||
"""FLASK_SECRET_KEY, config.ini, of anders een willekeurige sleutel die bewaard wordt in geheimen/flask.key.
|
"""FLASK_SECRET_KEY, config.ini, of anders een willekeurige sleutel die bewaard wordt in geheimen/flask.key.
|
||||||
(Nooit een vaste standaardsleutel: daarmee kan iemand een sessie voor eender welke school vervalsen.)"""
|
(Nooit een vaste standaardsleutel: daarmee kan iemand een sessie voor eender welke school vervalsen.)"""
|
||||||
@@ -86,7 +95,7 @@ class Config(metaclass=_SchoolConfigMeta):
|
|||||||
_get('algemeen', 'superbeheerders', env='PIVOT_SUPERBEHEERDERS').replace(';', ',').split(',')
|
_get('algemeen', 'superbeheerders', env='PIVOT_SUPERBEHEERDERS').replace(';', ',').split(',')
|
||||||
if x.strip()]
|
if x.strip()]
|
||||||
|
|
||||||
APP_VERSION = _get('algemeen', 'app_version', '1.1.0')
|
APP_VERSION = _versie()
|
||||||
|
|
||||||
# Elke bezochte pagina bewaren in de tabel Logs (centrale database)
|
# Elke bezochte pagina bewaren in de tabel Logs (centrale database)
|
||||||
LOGBOEK = _get('algemeen', 'logboek', 'ja').strip().lower() in ('ja', 'yes', 'true', '1', 'on')
|
LOGBOEK = _get('algemeen', 'logboek', 'ja').strip().lower() in ('ja', 'yes', 'true', '1', 'on')
|
||||||
|
|||||||
@@ -97,6 +97,8 @@
|
|||||||
html[data-theme="dark"] .google-btn { background: var(--surface); color: var(--text); border-color: var(--border-strong); }
|
html[data-theme="dark"] .google-btn { background: var(--surface); color: var(--text); border-color: var(--border-strong); }
|
||||||
html[data-theme="dark"] .google-btn:hover { background: var(--surface-muted); }
|
html[data-theme="dark"] .google-btn:hover { background: var(--surface-muted); }
|
||||||
html[data-theme="dark"] body.auth-page { background: var(--background-color); }
|
html[data-theme="dark"] body.auth-page { background: var(--background-color); }
|
||||||
|
/* Logo is donkerblauw op transparant: op een lichte plaat zetten zodat het leesbaar blijft */
|
||||||
|
html[data-theme="dark"] .auth-logo { background: #f1f5f9; padding: 18px 24px; border-radius: var(--radius-lg); box-shadow: var(--shadow); }
|
||||||
html[data-theme="dark"] mark { background: #854d0e; color: #fef9c3; }
|
html[data-theme="dark"] mark { background: #854d0e; color: #fef9c3; }
|
||||||
|
|
||||||
/* Pagina's met eigen pastelkleuren (gemarkeerde rijen, legendes, filters) */
|
/* Pagina's met eigen pastelkleuren (gemarkeerde rijen, legendes, filters) */
|
||||||
|
|||||||
+1
-1
@@ -11,7 +11,7 @@
|
|||||||
<link rel="icon" type="image/png" href="{{ url_for('static', filename='pivot_mark.png') }}">
|
<link rel="icon" type="image/png" href="{{ url_for('static', filename='pivot_mark.png') }}">
|
||||||
<link rel="stylesheet" href="{{ url_for('static', filename='global.css') }}">
|
<link rel="stylesheet" href="{{ url_for('static', filename='global.css') }}">
|
||||||
{% block head %}{% endblock %}
|
{% block head %}{% endblock %}
|
||||||
<style>.header-school { display: inline-block; max-width: 200px; overflow: hidden; text-overflow: ellipsis; vertical-align: middle; }</style>
|
<style>.header-school { display: inline-block; min-width: 0; flex-shrink: 1; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; vertical-align: middle; }</style>
|
||||||
{% block extra_css %}{% endblock %}
|
{% block extra_css %}{% endblock %}
|
||||||
</head>
|
</head>
|
||||||
<body class="{% block body_class %}{% endblock %}">
|
<body class="{% block body_class %}{% endblock %}">
|
||||||
|
|||||||
+1
-1
@@ -45,6 +45,6 @@
|
|||||||
|
|
||||||
{% block footer %}
|
{% block footer %}
|
||||||
<footer class="app-footer">
|
<footer class="app-footer">
|
||||||
PIVOT – Versie {{ version }} – Kristof Verbruggen
|
PIVOT – Versie {{ version }}
|
||||||
</footer>
|
</footer>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
@@ -0,0 +1,33 @@
|
|||||||
|
"""
|
||||||
|
Verhoogt het versienummer in VERSION met één stap. Uitvoeren vóór elke commit:
|
||||||
|
|
||||||
|
python verhoog_versie.py
|
||||||
|
|
||||||
|
Regels: het laatste cijfer gaat telkens één omhoog, tot 99.
|
||||||
|
1.1.0 -> 1.1.1
|
||||||
|
1.1.99 -> 1.2.0
|
||||||
|
1.99.99 -> 2.0.0 (het eerste cijfer heeft geen maximum)
|
||||||
|
"""
|
||||||
|
import os
|
||||||
|
|
||||||
|
PAD = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'VERSION')
|
||||||
|
MAX = 99
|
||||||
|
|
||||||
|
|
||||||
|
def volgende(versie):
|
||||||
|
hoofd, sub, patch = (int(x) for x in versie.strip().split('.'))
|
||||||
|
patch += 1
|
||||||
|
if patch > MAX:
|
||||||
|
patch, sub = 0, sub + 1
|
||||||
|
if sub > MAX:
|
||||||
|
sub, hoofd = 0, hoofd + 1
|
||||||
|
return f"{hoofd}.{sub}.{patch}"
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
with open(PAD, encoding='utf-8') as f:
|
||||||
|
oud = f.read().strip()
|
||||||
|
nieuw = volgende(oud)
|
||||||
|
with open(PAD, 'w', encoding='utf-8') as f:
|
||||||
|
f.write(nieuw + '\n')
|
||||||
|
print(f"{oud} -> {nieuw}")
|
||||||
Reference in new issue
Block a user