MagicMirror Forum
    • Recent
    • Tags
    • Unsolved
    • Solved
    • MagicMirror² Repository
    • Documentation
    • 3rd-Party-Modules
    • Donate
    • Discord
    • Register
    • Login
    A New Chapter for MagicMirror: The Community Takes the Lead
    Read the statement by Michael Teeuw here.

    MMM-Chores - Manage and keep track of your household Chores

    Scheduled Pinned Locked Moved Utilities
    86 Posts 16 Posters 24.5k Views 17 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • S Offline
      sdetweil @ewingfox
      last edited by

      @ewingfox please always code block for code, config and logs

      paste the text into the message editor window, blank line above and below
      select the text just pasted
      hit the </> button on the message editor toolbar

      I fixed prior

      Sam

      How to add modules

      learning how to use browser developers window for css changes

      E 1 Reply Last reply Reply Quote 1
      • E Offline
        ewingfox @sdetweil
        last edited by

        @sdetweil - Thanks! I’m a total hack, so I appreciate the heads up. MUCH CLEANER. I’m not used to passing code blocks in chats, usually I’m in an SCM somewhere, causing trouble… giving my devs a headache… :D

        E 1 Reply Last reply Reply Quote 0
        • E Offline
          ewingfox @ewingfox
          last edited by

          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());
          

          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…

          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!

          htilburgsH 1 Reply Last reply Reply Quote 0
          • htilburgsH Offline
            htilburgs @ewingfox
            last edited by htilburgs

            @pierregode
            I’m using dateFormatting: “” in my config, but I stil got the date on the dashboard. Do I somethine wrong?

                            {
                              module: "MMM-Chores",
                              position: "top_left",
                              header: "Takenlijst",
                              config: {
                                    updateInterval: 60 * 1000,
                                    adminPort: 5003,
                                    showDays: 365,
                                    showPast: true,
                                    dateFormatting: "",
                                    }
                            },
            

            194c5e22-2c1f-4839-b3a1-d688de98a8b1-image.png

            (still trying to learn JS, but not afraid to ask) ☺

            S 1 Reply Last reply Reply Quote 0
            • S Offline
              sdetweil @htilburgs
              last edited by

              @htilburgs try

              dateFormatting:null

              Sam

              How to add modules

              learning how to use browser developers window for css changes

              1 Reply Last reply Reply Quote 0
              • 1
              • 2
              • 3
              • 4
              • 5
              • 8
              • 9
              • 2 / 9
              • First post
                Last post
              Enjoying MagicMirror? Please consider a donation!
              MagicMirror created by Michael Teeuw.
              Forum managed by Sam, technical setup by Karsten.
              This forum is using NodeBB as its core | Contributors
              Contact | Privacy Policy