10 Commits

Author SHA1 Message Date
1a91c9f577 feat(audio): beheer Pi volume persistentie en Docker compatibiliteit
Het volume-instellingssysteem is geüpdatet om persistentie te ondersteunen, zelfs in Docker-containers. Het configureren van het volume met `amixer` is nu conditioneel, en als er in een Docker-omgeving wordt gewerkt, wordt alleen de instelling opgeslagen zonder directe toepassing. Een nieuw opstartscript `pi-volume-startup.sh` is toegevoegd om het HDMI-volume van de Pi automatisch in te stellen bij het opstarten op basis van de opgeslagen instellingen. Dit verbetert de gebruikerservaring en het onderhoud van het volume-instellingensysteem.
2025-05-28 20:32:44 +02:00
40e3bcc527 refactor(instellingen): verbeter errorafhandeling en amixer-check
De functie voor het opslaan van instellingen is verbeterd met uitgebreide foutafhandeling door gebruik te maken van try-except blokken. Er is nu een controle toegevoegd om te bepalen of de code in een Docker-container draait voordat 'amixer' commando's worden uitgevoerd, wat ongewenste fouten voorkomt als 'amixer' niet beschikbaar is. Dit verhoogt de robuustheid bij het instellen van Pi HDMI volume. Onverwachte fouten worden gelogd en het proces gaat verder zonder onderbreking.
2025-05-28 20:18:19 +02:00
1983a215cb feat(settings): voeg Pi HDMI volume controle toe aan UI en API
Deze commit introduceert de mogelijkheid om het HDMI volume van de Raspberry Pi in te stellen via de webapplicatie.

Belangrijkste wijzigingen:
- Toevoeging van een nieuwe invoercontrole (slider) in de instellingenpagina voor het aanpassen van het Pi HDMI volume.
- Implementatie van een backend API endpoint dat het volume instelt via amixer, met validatie en foutafhandeling.
- Testfunctie toegevoegd waarmee gebruikers onmiddellijk het ingestelde volume kunnen testen.
- Automatische HDMI audio configuratie toegevoegd in pi-setup-desktop.sh script.

Dit verbetert de gebruiksvriendelijkheid, doordat gebruikers eenvoudig het audio-uitgangsvolume kunnen beheren en testen zonder directe toegang tot de hardware.
2025-05-28 20:02:51 +02:00
cb710214f2 chore(webapp): verwijder hardcoded SONOS IP en gebruik config.py
Het hardcoded IP-adres voor de SONOS API is verwijderd uit app.py. In plaats daarvan wordt het IP-adres nu geïmporteerd uit config.py, wat configuratiebeheer vergemakkelijkt en flexibiliteit biedt bij het wijzigen van netwerkinstellingen.
2025-05-28 19:11:42 +02:00
c212ec4987 feat(debug): debug mode tijdsynchronisatie toegevoegd
De commit introduceert een debug tijdsynchronisatie tussen de cron script, de hoofdpagina en de Flask API. Deze functies maken het mogelijk om de huidige tijd te simuleren met een instelbare offset voor testdoeleinden. Het volume en de gebedstijden passen zich nu aan op basis van deze debug tijd indien actief. Debugger gebruikers kunnen via de nieuwe '/api/debug-time' endpoint de tijd aanpassen. De wijzigingen verbeteren de testbaarheid van de applicatie en zorgen ervoor dat gebedsafroepen en volumebepaling correct functioneren onder simulatieomstandigheden.
2025-05-28 18:59:15 +02:00
f3cbd6e910 feat(webapp): voeg instelbaar hadith-interval en tabbladen toe
Hadith-interval kan nu via instellingen worden aangepast met de toevoeging van 'hadith_interval_seconds' aan settings.json, settings.html en app.py. De update interval voor hadiths in JavaScript gebruikt deze variabele. Daarnaast is de instellingenpagina herzien en georganiseerd in vier tabbladen: Audio & Volume, Gebedstijden, Functies, Systeem. Nieuwe CSS-styling en JavaScript-functionaliteit zijn toegevoegd om het schakelgedrag van tabbladen te beheren, waarbij de laatst actieve tab in localStorage wordt opgeslagen.
2025-05-28 08:39:50 +02:00
f4a18ce8b4 feat(debug): beveilig debug functionaliteit met debug_mode
Debug functionaliteit is nu alleen toegankelijk wanneer debug_mode is ingeschakeld. Dit omvat het omleiden van gebruikers naar de hoofdpagina als debug_mode uitgeschakeld is en het tonen van een foutmelding bij een niet-geautoriseerde API-aanroep. Ook is de debug knop in de UI alleen zichtbaar als debug_mode aan staat. Dit verhoogt de veiligheid en beperkt toegang tot debugging opties.
2025-05-28 07:33:16 +02:00
fb8a35490a feat(adzkaar): voeg fullscreen Adzkaar-functionaliteit toe
Deze commit implementeert een nieuw Adzkaar-scherm dat automatisch verschijnt na de gebedstijden. Belangrijke wijzigingen omvatten:

- Toevoeging van instellingen voor het inschakelen en aanpassen van de duur van het Adzkaar-scherm in `settings.json` en de bijbehorende HTML.
- Implementatie van nieuwe routes `/adzkaar` en `/api/trigger-adzkaar` om respectievelijk het scherm weer te geven en te debuggen.
- Update van de countdown-logica om het Adzkaar-scherm drie seconden na het adhan af te spelen.
- Nieuwe frontend-elementen voor een interactieve, kaart-voor-kaart weergave van de Adzkaar met ondersteuning voor navigatie en toetsenbordbediening.
- Aanpassing van bestaande templates om integratie van de nieuwe functionaliteiten te faciliteren.

Deze toevoegingen verbeteren de gebruikerservaring door meer spirituele betrokkenheid mogelijk te maken na de gebedstijden.
2025-05-28 03:57:40 +02:00
d9e8d9a915 feat(gebedstijden): voeg gebedstijd offsets en UI aanpassingen toe
Gebedstijd offsets zijn toegevoegd waarmee gebruikers tijdaanpassingen kunnen maken aan de tijden verkregen van de VUMG API. Dit biedt meer flexibiliteit door de mogelijkheid te geven om minuten toe te voegen of af te trekken van elke specifieke gebedstijd (Fajr, Zuhr, Asr, Maghrib, Isha). Het template voor instellingen is aangepast om deze nieuwe offset functionaliteit op een gebruiksvriendelijke manier toegankelijk te maken. Ook zijn er kleine correcties uitgevoerd om de seconden correct uit de gebedstijden te halen voor een betere verwerking.
2025-05-27 15:29:42 +02:00
df8f4c7d9b je commitbericht 2025-05-27 11:50:28 +02:00