Skip to content

Latest commit

 

History

History
244 lines (175 loc) · 6.66 KB

File metadata and controls

244 lines (175 loc) · 6.66 KB

🎉 Release Notes: Nextcloud Verein v0.2.0-beta (English)

Release Date: December 1, 2025
Version: 0.2.0-beta
Status: ✅ Stable & Production-Ready for Testers
Nextcloud Compatibility: 28.0.0+


📋 Summary

v0.2.0-beta is here! 🚀 This release brings three major features together:

  1. Role-Based Access Control (RBAC) — Granular permissions for all users
  2. CSV/PDF Export — Professional data exports with correct formatting
  3. Dashboard Statistics — Live statistics for members and fees

Tested with 130+ unit tests, 69 validation scenarios, and 15 realistic test members. ✅


✨ What's New?

🔐 Role-Based Access Control (New!)

Users can now be assigned roles that control their permissions on the platform.

Available Roles:

  • Admin — Full control over all features
  • Treasurer — Management of fees and exports
  • Member — Read-only access to own data

Granular Permissions:

  • verein.member.view — View members
  • verein.member.manage — Create/edit/delete members
  • verein.finance.view — View fees
  • verein.finance.manage — Create/edit/delete fees
  • verein.export.csv — Perform CSV exports
  • verein.export.pdf — Perform PDF exports
  • verein.role.manage — Assign roles (Admin only)

Admin Panel Integration:

  • New page under Settings → Administration → Verein
  • Manage user roles graphically
  • View permissions overview

📊 Dashboard Statistics (New!)

The dashboard now displays live statistics with 4 tiles:

  1. 👥 Members — Total count of active members
  2. 📋 Open Fees — Sum + count of unpaid fees
  3. ✓ Paid Fees — Sum + count of paid fees
  4. 📅 Due Fees — Fees with exceeded payment deadline

Data is fetched live from the server and updates automatically.


💾 CSV/PDF Export (Improved!)

CSV Export Features:

  • ✅ UTF-8 BOM for Excel compatibility
  • ✅ Semicolon separators (European standard)
  • ✅ Correct handling of umlauts (Ä, Ö, Ü)
  • ✅ Safe handling of special characters ("", quotation marks)
  • ✅ Headers + complete data records
  • ✅ Works with empty database (headers only)

Available Exports:

  • /api/verein/export/members/csv — Member list
  • /api/verein/export/members/pdf — Member list (PDF)
  • /api/verein/export/fees/csv — Fee list
  • /api/verein/export/fees/pdf — Fee list (PDF)

Tested with Realistic Data:

✅ 15 Members (German names & addresses)
✅ 23 Fees (mixed status: paid, open, due)
✅ Special character handling (Jean-François, Büttner "Das Genie")
✅ Complete IBAN/BIC (COBADEFFXXX standard)

🔒 Security & Validation

Input Validation:

  • ✅ IBAN validation (ISO 13616 standard)
  • ✅ BIC validation (SWIFT ISO 9362)
  • ✅ Email validation (RFC 5322 + optional MX-check)
  • ✅ SEPA XML validation
  • ✅ Unicode normalization (NFKC)
  • ✅ Input sanitization on all APIs

Permission System:

  • ✅ @RequirePermission decorators on 31 endpoints
  • ✅ AuthorizationMiddleware with automatic checks
  • ✅ HTTP 403 Forbidden on missing permissions
  • ✅ Audit logging for permission violations

📈 Test Coverage

Category Tests Status Coverage
RBAC 20+ ✅ 100% Permission scenarios
Validation 69+ ✅ 100% IBAN/BIC/Email/SEPA
Export 41+ ✅ 100% CSV/PDF services
Integration 15+ ✅ 100% API endpoints
Total 130+ ✅ 100% All assertions passed

🔄 Changes Since v0.1.0

New Features

  • Dashboard with 4 statistic tiles
  • API endpoints for statistics
  • RBAC system with 3 roles
  • Improved CSV/PDF export
  • Admin panel for role management

Improvements

  • Error handling in export controllers
  • Logger integration for debugging
  • Better validation messages
  • Query performance optimizations

Bug Fixes

  • CSV export with correct member names
  • Fee export without missing methods
  • Statistics service DateTime handling

🚀 Installation & Upgrade Guide

New Installation

# 1. Download app
git clone https://github.com/Wacken2012/nextcloud-verein.git

# 2. Install in Nextcloud
cp -r nextcloud-verein /path/to/nextcloud/apps/verein

# 3. Activate in Nextcloud
# Go to: Settings → Administration → Apps → Verein → Enable

# 4. Setup roles (optional)
# Go to: Settings → Administration → Verein → Roles

Update from v0.1.0

# 1. Backup old version
cp -r /path/to/apps/verein /path/to/apps/verein.backup

# 2. Apply new files
git pull origin main
cp -r lib appinfo js dist /path/to/apps/verein/

# 3. Re-enable app
cd /path/to/nextcloud && php occ app:enable verein

Important: No database migrations needed! v0.2.0-beta is fully backward compatible.


⚠️ Known Issues & Workarounds

1. PDF Export (TCPDF Dependency)

Status: Will be fixed in v0.2.1
Workaround: Use CSV export, then convert to PDF in Excel
Details: TCPDF requires additional system dependencies not yet fully integrated.

2. Admin Panel UI (Simple)

Status: Will be expanded in v0.2.1
Workaround: Settings work via API, UI will be improved
Details: Basic functionality is present, but the user interface could be more appealing.

3. Internationalization

Status: Planned for v0.3.0
Details: Currently in German only. English translations coming soon.


📞 Feedback & Support

We look forward to your feedback!


🙏 Acknowledgments

Thank you to everyone who provided feedback and suggestions!

Special thanks to the Nextcloud community for the amazing platform.


📅 Next Steps (Roadmap)

v0.2.1 (Q1 2026)

  • PDF export with TCPDF fully integrated
  • Admin panel UI improvements
  • Performance optimizations
  • Additional tests

v0.3.0 (Q2 2026)

  • Internationalization (English, French, ...)
  • Automatic fee generation
  • Email notifications
  • SEPA Direct Debit (pain.008)

v1.0.0 (Q4 2026)

  • Production-ready (100% test coverage)
  • Nextcloud Appstore certification
  • Mobile app integration
  • Enterprise features

📊 Version History

Version Status Date Highlights
0.2.0-beta ✅ Released Dec 1, 2025 RBAC, Statistics, CSV/PDF
0.1.0-alpha ✅ Released Nov 15, 2025 CRUD, SEPA, MVP
0.0.1-dev 📋 Archived Oct 2025 Initial prototype

Enjoy using Nextcloud Verein App! 🎉

For questions or issues: https://github.com/Wacken2012/nextcloud-verein/issues