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
    83 Posts 15 Posters 24.0k Views 16 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.
    • A Offline
      atwist
      last edited by

      Is it possible to have a recurring weekday only task? Just Monday-Friday?

      1 Reply Last reply Reply Quote 0
      • PierreGodeP Offline
        PierreGode Module Developer
        last edited by

        @johngalt @sdetweil @redbeardedninja @sarote @mischag @plainbroke @

        New big update out now.
        New reward system
        more recurring options

        Fixes and updates.

        eaff4adb-f0ca-4eb8-a8b0-e18692e174e9-image.png
        33e69ea0-e02c-4d75-8228-8910dfa81257-image.png

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

          Hello! New user here, love the UI (especially the admin features!) I’m building a secret Christmas gift for my wife (who is obsessed with organization). I was about to give up on MM - until I found your module!

          Question: I see daily, weekly, monthly options - is there a feature to set reoccurring events that are Monday Friday? This is specific to kids who may have daily ‘weekday’ tasks to do that aren’t required on Saturday or Sunday. I’m happy to skip the UI - aka, create an event in the UI and then tweak the underlying config via CLI.

          Thank you!!!

          E
          EDIT:

          took a gander at your code (yeah, you are a pro - this is REALLY CLEAN (I’m a hack, but I know good work when I see it lol). Looks like an update to the getNextDate function, adding the pattern to the admin html file and the lang pack (I only added it to the enlish one (remember, hack here) seems to work pretty well. I’ll search a bit further and do a little testing to see how it behaves - but… a thing?

          E

          function getNextDate(dateStr, recurring) {
            const d = new Date(dateStr);
            if (recurring === "daily") {
              d.setDate(d.getDate() + 1);
            } else if (recurring === "weekly") {
              d.setDate(d.getDate() + 7);
            } else if (recurring === "monthly") {
              d.setMonth(d.getMonth() + 1);
            } else if (recurring === "yearly") {
              d.setFullYear(d.getFullYear() + 1);
            } else if (recurring && recurring.startsWith("every_")) {
              // Custom recurring patterns: every_X_days, every_X_weeks, first_monday_month
              const parts = recurring.split("_");
              if (parts[1] === "X" && parts[2] === "days") {
                const days = parseInt(parts[3]) || 2;
                d.setDate(d.getDate() + days);
              } else if (parts[1] === "X" && parts[2] === "weeks") {
                const weeks = parseInt(parts[3]) || 2;
                d.setDate(d.getDate() + (weeks * 7));
              } else if (recurring === "first_monday_month") {
                // First Monday of next month
                d.setMonth(d.getMonth() + 1);
                d.setDate(1);
                // Find first Monday
                while (d.getDay() !== 1) {
                  d.setDate(d.getDate() + 1);
                }
              } else {
                return null;
              }
            } else {
              return null;
            }
            return d.toISOString().slice(0, 10);
          }
          

          34d49e4b-e53b-4fac-be14-3b4d6a278d73-image.png

          S 1 Reply Last reply Reply Quote 0
          • S Do not disturb
            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 Online
              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

              1 Reply Last reply Reply Quote 0
              • 1
              • 2
              • 5
              • 6
              • 7
              • 8
              • 9
              • 7 / 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