You are here

function _datereminder_set_reminders in Date Reminder 6

Same name and namespace in other branches
  1. 6.2 includes/db6.inc \_datereminder_set_reminders()
  2. 7 includes/db7.inc \_datereminder_set_reminders()

Write back user reminder information.

2 calls to _datereminder_set_reminders()
_datereminder_form_submit_user in ./datereminder.module
Callback on submit from datereminder_form.
_datereminder_update_reminder_nexts in ./datereminder.module
Recompute "next" time and write back a group of reminders.

File

./datereminder.module, line 555
Support for reminders for nodes with dates.

Code

function _datereminder_set_reminders(&$reminders) {
  foreach (array_keys($reminders) as $k) {
    $r = $reminders[$k];

    // first, are there any reminders to save?
    if ($r->leadtime == 0 || !isset($r->next)) {

      // No reminders, so delete any existing entry
      if ($r->rid > 0) {
        db_query('DELETE FROM {datereminder} WHERE rid = %d', $r->rid);
      }
      unset($reminders[$k]);
    }
    else {
      if ($r->rid > 0) {
        drupal_write_record('datereminder', $r, 'rid');
      }
      else {

        // This is a new entry
        $ok = drupal_write_record('datereminder', $r);
        if ($ok) {
          unset($reminders[$k]);
          $reminders[$r->rid] = $r;
        }
      }
    }
  }
}