function create_empty_thereafter() {
	return {
		name : "",
		name_secondary : "",
		visibility : "publ",
		end : "",
		end_is_vague : false,
		locations: [],
		involved : [],
		involved_roles : [],
		description : "",
		annotations : ""
	};
}

exports.create_empty_thereafter = create_empty_thereafter;

function copy_thereafter(dest, source) {
	dest.uuid = source.uuid;
	dest.name = source.name;
	dest.name_secondary = source.name_secondary;
	dest.visibility = source.visibility;
	dest.end = source.end;
	dest.end_is_vague = source.end_is_vague;
	dest.locations = source.locations;
	dest.involved = source.involved;
	dest.involved_roles = source.involved_roles;
	dest.description = source.description;
	dest.annotations = source.annotations;
}

exports.copy_thereafter = copy_thereafter;

function create_empty_event() {
	var event = create_empty_thereafter();
	event.punit = { name : "Rödental St. Hedwig", dn : "eb_bamberg/d_coburg/sb_cosl/p_roedental" };
	event.start = "";
	return event;
}

exports.create_empty_event = create_empty_event;

function copy_event_without_thereafter(dest, source) {
	copy_thereafter(dest, source);
	dest.punit = source.punit;
	dest.start = source.start;
}

exports.copy_event_without_thereafter = copy_event_without_thereafter;

function add_uids_to_event(ev) {
	for(var idx in ev.involved)
	{
		ev.involved[idx].uid = generateUID();
		console.log(ev.involved[idx]);
	}
	for(var idx in ev.involved_roles)
	{
		ev.involved_roles[idx].uid = generateUID();

		for(var inv_idx in ev.involved_roles[idx].involved)
			ev.involved_roles[idx].involved[inv_idx].uid = generateUID();
	}

	for(var idx in ev.locations)
	{
		ev.locations[idx].uid = generateUID();
		console.log(ev.locations[idx]);
	}
}

exports.add_uids_to_event = add_uids_to_event;

function delete_event_if_nothing_is_edited(day, event) {
	if(event.in_editing)
		return;

	console.log(Object.keys(event.thereafter).length);

	if(Object.keys(event.thereafter).length === 0) {
		console.log('DELETING EVENT: ', event.uuid);
		delete day.events[event.uuid];
	}
}

exports.delete_event_if_nothing_is_edited = delete_event_if_nothing_is_edited;
