Example #1
0
/**
 * Prepares the vars for the event edit form
 *
 * @param \Event $event the event to prepare the vars for
 *
 * @return array
 */
function event_manager_prepare_form_vars($event = null)
{
    // defaults
    $values = ['guid' => ELGG_ENTITIES_ANY_VALUE, 'title' => ELGG_ENTITIES_ANY_VALUE, 'shortdescription' => ELGG_ENTITIES_ANY_VALUE, 'tags' => ELGG_ENTITIES_ANY_VALUE, 'description' => ELGG_ENTITIES_ANY_VALUE, 'comments_on' => 1, 'venue' => ELGG_ENTITIES_ANY_VALUE, 'location' => ELGG_ENTITIES_ANY_VALUE, 'latitude' => ELGG_ENTITIES_ANY_VALUE, 'longitude' => ELGG_ENTITIES_ANY_VALUE, 'region' => ELGG_ENTITIES_ANY_VALUE, 'event_type' => ELGG_ENTITIES_ANY_VALUE, 'website' => ELGG_ENTITIES_ANY_VALUE, 'contact_details' => ELGG_ENTITIES_ANY_VALUE, 'contact_guids' => ELGG_ENTITIES_ANY_VALUE, 'fee' => ELGG_ENTITIES_ANY_VALUE, 'fee_details' => ELGG_ENTITIES_ANY_VALUE, 'organizer' => ELGG_ENTITIES_ANY_VALUE, 'organizer_guids' => ELGG_ENTITIES_ANY_VALUE, 'event_start' => time(), 'event_end' => time() + 3600, 'registration_ended' => ELGG_ENTITIES_ANY_VALUE, 'endregistration_day' => ELGG_ENTITIES_ANY_VALUE, 'with_program' => ELGG_ENTITIES_ANY_VALUE, 'registration_needed' => ELGG_ENTITIES_ANY_VALUE, 'register_nologin' => ELGG_ENTITIES_ANY_VALUE, 'show_attendees' => 1, 'notify_onsignup' => ELGG_ENTITIES_ANY_VALUE, 'max_attendees' => ELGG_ENTITIES_ANY_VALUE, 'waiting_list_enabled' => ELGG_ENTITIES_ANY_VALUE, 'access_id' => get_default_access(), 'container_guid' => elgg_get_page_owner_entity()->getGUID(), 'event_interested' => 0, 'event_presenting' => 0, 'event_exhibiting' => 0, 'registration_completed' => ELGG_ENTITIES_ANY_VALUE];
    if ($event instanceof \Event) {
        // edit mode
        $values['latitude'] = $event->getLatitude();
        $values['longitude'] = $event->getLongitude();
        $values['tags'] = string_to_tag_array($event->tags);
        foreach ($values as $field => $value) {
            if (!in_array($field, ['latitude', 'longitude', 'tags'])) {
                $values[$field] = $event->{$field};
            }
        }
        if (!empty($values['endregistration_day'])) {
            $values['endregistration_day'] = date('Y-m-d', $values['endregistration_day']);
        }
    }
    if (elgg_is_sticky_form('event')) {
        // merge defaults with sticky data
        $values = array_merge($values, elgg_get_sticky_values('event'));
    }
    elgg_clear_sticky_form('event');
    return $values;
}