I’ve done a lot of testing and submitted PR-220 . It turns out there are some really complicated date functions that worked—unless they didn’t (edge cases with creating a weekday only task, setting start date on a Weekend, etc).
else if (recurring === "daily-weekdays") {
// We ignore the d.setDate(+1) and just find the next valid weekday from today
let testDate = new Date();
testDate.setDate(testDate.getDate() + 1);
while (testDate.getDay() === 0 || testDate.getDay() === 6) {
testDate.setDate(testDate.getDate() + 1);
}
// Force 'd' to be this specific date, bypassing module interference
d.setTime(testDate.getTime());
} else if (recurring === "daily-weekends") {
let testDate = new Date();
testDate.setDate(testDate.getDate() + 1);
while (testDate.getDay() >= 1 && testDate.getDay() <= 5) {
testDate.setDate(testDate.getDate() + 1);
}
d.setTime(testDate.getTime());
[image: 1766302755481-14991c0d-e8fa-4d9d-95c1-d87e58757d59-image.png]
The logic is working (finally)- I wish I was better at this stuff, I’m a DevOps guy, so I’m lazy and not particularly talented at coding unless I can break thousands of servers with automation (then I’m a pro lol).
I also went through and added the requisite language support for the 10 supported languages for the two new elements included in admin.html
<div class="col-sm-auto">
<select id="taskRecurring" class="form-select">
<option value="">One time</option>
<option value="daily">Daily</option>
<option value="weekly">Weekly</option>
<option value="daily-weekdays">Daily (Weekdays Only)</option>
<option value="daily-weekends">Daily (Weekends Only)</option>
<option value="monthly">Monthly</option>
<option value="yearly">Yearly</option>
<option value="every_X_days_2">Every 2 Days</option>
<option value="every_X_days_3">Every 3 Days</option>
<option value="every_X_weeks_2">Every 2 Weeks</option>
<option value="every_X_weeks_3">Every 3 Weeks</option>
<option value="first_monday_month">First Monday of Month</option>
</select>
</div>
I’m testing a few .css changes to improve touchscreen support - you can see plenty of other .css issues I’ll nave to sort out, sreenshots from chrome of the MM page shows it’s not adjusting well to different browsers…
[image: 1766303041939-9d065f9d-8c5e-4214-abd5-fdd57392da87-image.png]
I also put together a mini-module to provide a placard showing the options in the ‘reward store’ - My kid is super goal oriented, so being able to take advantage of @pierregode 's awesome reward system is going to be a big win!
I’m going to look further into making this interactive and set up some kind of email to us to indicate she’s redeemed her coins on a particular reward.
The current MMM-ChoreRewards is super crude and rude - you can see plenty of other .css issues I’ll have to sort out. @sdetweil hopefully I’ve formatted this post better - thank you for the #mod help!