nodebb-plugin-onekite-calendar 2.0.25 → 2.0.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/lib/admin.js +3 -0
- package/package.json +1 -1
- package/pkg/package/CHANGELOG.md +15 -0
- package/pkg/package/lib/admin.js +3 -0
- package/pkg/package/package.json +1 -1
- package/plugin.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# Changelog – calendar-onekite
|
|
2
2
|
|
|
3
|
+
## 1.3.21
|
|
4
|
+
- Comptabilisation : les **sorties gratuites annulées** ne sont plus comptées (elles sont exclues si `cancelledAt` est présent, même si le statut est resté `paid`).
|
|
5
|
+
|
|
6
|
+
## 1.3.20
|
|
7
|
+
- Temps réel : le **widget** (Calendrier 2 semaines) se met à jour dynamiquement comme la page calendrier (créations / changements de statut / annulations…), sans rechargement.
|
|
8
|
+
|
|
3
9
|
## 1.3.19
|
|
4
10
|
- Annulation : un validateur/gestionnaire peut désormais annuler **même sa propre** réservation après paiement (la restriction `cannot-cancel-paid` ne s'applique plus aux validateurs).
|
|
5
11
|
|
package/lib/admin.js
CHANGED
|
@@ -512,6 +512,9 @@ admin.getAccounting = async function (req, res) {
|
|
|
512
512
|
const r = await dbLayer.getReservation(rid);
|
|
513
513
|
if (!r) continue;
|
|
514
514
|
if (String(r.status) !== 'paid') continue;
|
|
515
|
+
// Defensive: if a reservation was cancelled but its status remained 'paid'
|
|
516
|
+
// (legacy data / edge cases), never count it in accounting.
|
|
517
|
+
if (r.cancelledAt) continue;
|
|
515
518
|
if (r.accPurgedAt) continue;
|
|
516
519
|
const start = parseInt(r.start, 10);
|
|
517
520
|
if (!Number.isFinite(start)) continue;
|
package/package.json
CHANGED
package/pkg/package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
# Changelog – calendar-onekite
|
|
2
2
|
|
|
3
|
+
## 1.3.21
|
|
4
|
+
- Comptabilisation : les **sorties gratuites annulées** ne sont plus comptées (elles sont exclues si `cancelledAt` est présent, même si le statut est resté `paid`).
|
|
5
|
+
|
|
6
|
+
## 1.3.20
|
|
7
|
+
- Temps réel : le **widget** (Calendrier 2 semaines) se met à jour dynamiquement comme la page calendrier (créations / changements de statut / annulations…), sans rechargement.
|
|
8
|
+
|
|
9
|
+
## 1.3.19
|
|
10
|
+
- Annulation : un validateur/gestionnaire peut désormais annuler **même sa propre** réservation après paiement (la restriction `cannot-cancel-paid` ne s'applique plus aux validateurs).
|
|
11
|
+
|
|
12
|
+
## 1.3.18
|
|
13
|
+
- Fix HelloAsso webhook : suppression d'une double déclaration `realtime` qui empêchait le plugin de se charger (SyntaxError).
|
|
14
|
+
|
|
15
|
+
## 1.3.17
|
|
16
|
+
- Temps réel : les **créations** (locations / évènements), **changements de statut** (validation, refus, annulation, paiement reçu) et **expirations** se répercutent automatiquement sur le calendrier pour **tous les utilisateurs connectés**, sans rechargement de page.
|
|
17
|
+
|
|
3
18
|
## 1.3.16
|
|
4
19
|
- Calendrier : le **jour actuel** n’est plus affiché comme indisponible (gris + panneau sens interdit). Seules les **dates passées** restent désactivées visuellement.
|
|
5
20
|
|
package/pkg/package/lib/admin.js
CHANGED
|
@@ -502,6 +502,9 @@ admin.getAccounting = async function (req, res) {
|
|
|
502
502
|
const r = await dbLayer.getReservation(rid);
|
|
503
503
|
if (!r) continue;
|
|
504
504
|
if (String(r.status) !== 'paid') continue;
|
|
505
|
+
// Defensive: if a reservation was cancelled but its status remained 'paid'
|
|
506
|
+
// (legacy data / edge cases), never count it in accounting.
|
|
507
|
+
if (r.cancelledAt) continue;
|
|
505
508
|
if (r.accPurgedAt) continue;
|
|
506
509
|
const start = parseInt(r.start, 10);
|
|
507
510
|
if (!Number.isFinite(start)) continue;
|
package/pkg/package/package.json
CHANGED
package/plugin.json
CHANGED