title: iOS Notification Trigger: fortnightly and/or quarterly
body: <p>I can't seem to find any Apple Documentation for this exact scenario, and I've tried various ways to do this and I keep coming up empty. </p>
  
  <p>I would like to schedule a repeating notification (<code>iOS 10+</code> so <code>UNCalendarNotificationTrigger</code> or equivalent).<br>
  These are <em>Local Notifications</em> <strong>not</strong> Push Notifications.</p>
  
  <h3>My Goal:</h3>
  
  <p>Schedule notifications that repeat:</p>
  
  <ul>
  <li><em>once a fortnight</em> (e.g., every <strong>second</strong> Tuesday)</li>
  <li><em>once a quarter</em> (e.g., 1st of <strong>every 3 months</strong>)</li>
  </ul>
  
  <h3>My Current Approach:</h3>
  
  <p>These triggers work well, and are simple to implement (Running the code in a Swift Playground).</p>
  
  <pre class="lang-js prettyprint-override"><code>// Every day at 12pm
  var daily = DateComponents()
  daily.hour = 12
  let dailyTrigger = UNCalendarNotificationTrigger(dateMatching: daily, repeats: true)
  dailyTrigger.nextTriggerDate() // "Jan 4, 2017, 12:00 PM"
  
  // Every Tuesday at 12pm
  var weekly = DateComponents()
  weekly.hour = 12
  weekly.weekday = 3
  let weeklyTrigger = UNCalendarNotificationTrigger(dateMatching: weekly, repeats: true)
  weeklyTrigger.nextTriggerDate() // "Jan 10, 2017, 12:00 PM"
  
  // The 1st of every month at 12pm
  var monthly = DateComponents()
  monthly.hour = 12
  monthly.day = 1
  let monthlyTrigger = UNCalendarNotificationTrigger(dateMatching: monthly, repeats: true)
  monthlyTrigger.nextTriggerDate() // "Feb 1, 2017, 12:00 PM"
  
  // Every 1st of February at 12pm
  var yearly = DateComponents()
  yearly.hour = 12
  yearly.day = 1
  yearly.month = 2
  let yearlyTrigger = UNCalendarNotificationTrigger(dateMatching: yearly, repeats: true)
  yearlyTrigger.nextTriggerDate() // "Feb 1, 2017, 12:00 PM"
  </code></pre>
  
  <h3>But...</h3>
  
  <p>I can't seem to get a <code>fortnightly</code> or <code>quarterly</code> trigger to function correctly.</p>
  
  <pre class="lang-js prettyprint-override"><code>// Every second Tuesday at 12pm
  // ... There is no "date.fortnight", is this possible?
  
  // The 1st of every quarter at 12pm
  var quarterly = DateComponents()
  quarterly.hour = 12
  quarterly.day = 4
  // Values: 1, 2, 3 or 4 all produce the same "nextTriggerDate" - why?
  quarterly.quarter = 4 
  let quarterlyTrigger = UNCalendarNotificationTrigger(dateMatching: quarterly, repeats: true)
  quarterlyTrigger.nextTriggerDate()
  </code></pre>
  
  <p>So, to be clear, my questions are:</p>
  
  <ol>
  <li>Is it possible to get a notification that repeats every fortnight?</li>
  <li>How do we get a trigger for once a quarter? </li>
  </ol>
  
  <p>Since <code>DateComponents()</code> has a <code>quarter</code> unit, I assume that a <code>quarterly</code> trigger is possible. For the fortnightly reminder however, I'm not even sure if this is possible...</p>
  
  <p>Any insight would be appreciated!</p>