Example #1
0
    case Util::FREQUENCY_WEEKLY:
        $repeat_weekly_days = get_input('repeat_weekly_days');
        $repeat_weekly_days = is_array($repeat_weekly_days) ? $repeat_weekly_days : date('D', $event->getStartTimestamp());
        $event->repeat_weekly_days = $repeat_weekly_days;
        break;
    case Util::FREQUENCY_MONTHLY:
        $repeat_monthly_by = get_input('repeat_monthly_by', Util::REPEAT_MONTHLY_BY_DATE);
        $event->repeat_monthly_by = $repeat_monthly_by;
        break;
}
$event->repeat_end_timestamp = $event->calculateRepeatEndTimestamp();
if (!$event->save()) {
    register_error(elgg_echo('events:error:save'));
    forward(REFERER);
}
$event->setLocation($location);
elgg_delete_metadata(array('guids' => $event->guid, 'metadata_names' => 'reminder', 'limit' => 0));
$has_reminders = get_input('has_reminders');
$reminders = get_input('reminders', array());
if ($has_reminders && !empty($reminders)) {
    $size = count($reminders['value']) - 1;
    // last one is the template
    for ($i = 0; $i < $size; $i++) {
        $reminder_value = round($reminders['value'][$i]);
        switch ($reminders['increment'][$i]) {
            default:
            case 'minute':
                $reminder_value *= Util::SECONDS_IN_A_MINUTE;
                break;
            case 'hour':
                $reminder_value *= Util::SECONDS_IN_AN_HOUR;