function datereminder_rules_action_set_reminder in Date Reminder 7
Called as a rule action to set a reminder on the given node.
Parameters
type $node:
type $user:
type $lead:
File
- ./
datereminder.rules.inc, line 113 - DateReminder rules.
Code
function datereminder_rules_action_set_reminder($node, $user, $lead) {
if (!datereminder_rules_condition_user_may_set($node, $user)) {
return;
}
module_load_include('inc', 'datereminder', 'includes/db7');
// Get existing reminders so we can check for redundancy.
$selector = array(
'nid' => $node->nid,
'uid' => $user->uid,
);
$reminders = _datereminder_load_reminders($selector, $node);
foreach ($reminders as $r) {
if ($r->leadtime == $lead) {
// Reminder is already set.
return;
}
}
// Create new reminder.
$r = (object) array();
$r->rid = -1;
$r->leadtime = $lead;
$r->nid = $node->nid;
$r->uid = $user->uid;
$r->email = NULL;
$r->next_due = NULL;
module_load_include('inc', 'datereminder', 'includes/node');
_datereminder_get_next_reminder($r);
$reminders[] = $r;
_datereminder_set_reminders($reminders);
}