| 
									
										
										
										
											2017-10-15 15:30:28 +00:00
										 |  |  | $(document).ready(function() { | 
					
						
							|  |  |  | 	// Go to the permissions tab if the checkbox is checked.
 | 
					
						
							|  |  |  | 	$('body').on("click", "#id_share", function() { | 
					
						
							| 
									
										
										
										
											2018-09-09 14:10:17 +00:00
										 |  |  | 		if ($('#id_share').is(':checked') && !( $('#id_share').attr("disabled"))) { | 
					
						
							| 
									
										
										
										
											2016-06-17 12:09:18 +00:00
										 |  |  | 			$('#acl-wrapper').show(); | 
					
						
							|  |  |  | 			$("a#event-perms-lnk").parent("li").show(); | 
					
						
							|  |  |  | 			toggleEventNav("a#event-perms-lnk"); | 
					
						
							|  |  |  | 			eventAclActive(); | 
					
						
							|  |  |  | 		} | 
					
						
							|  |  |  | 		else { | 
					
						
							|  |  |  | 			$('#acl-wrapper').hide(); | 
					
						
							|  |  |  | 			$("a#event-perms-lnk").parent("li").hide(); | 
					
						
							|  |  |  | 		} | 
					
						
							|  |  |  | 	}).trigger('change'); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-10-15 15:30:28 +00:00
										 |  |  | 	// Disable the finish time input if the user disable it.
 | 
					
						
							| 
									
										
										
										
											2016-06-17 12:09:18 +00:00
										 |  |  | 	$('body').on("change", "#id_nofinish", function() { | 
					
						
							|  |  |  | 		enableDisableFinishDate() | 
					
						
							|  |  |  | 	}).trigger('change'); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-10-15 15:30:28 +00:00
										 |  |  | 	// JS for the permission section.
 | 
					
						
							| 
									
										
										
										
											2016-06-17 12:09:18 +00:00
										 |  |  | 	$('#contact_allow, #contact_deny, #group_allow, #group_deny').change(function() { | 
					
						
							|  |  |  | 		var selstr; | 
					
						
							|  |  |  | 		$('#contact_allow option:selected, #contact_deny option:selected, #group_allow option:selected, #group_deny option:selected').each( function() { | 
					
						
							|  |  |  | 			selstr = $(this).text(); | 
					
						
							|  |  |  | 			$('#jot-public').hide(); | 
					
						
							|  |  |  | 		}); | 
					
						
							| 
									
										
										
										
											2016-10-16 14:04:53 +00:00
										 |  |  | 		if (selstr == null) { | 
					
						
							| 
									
										
										
										
											2016-06-17 12:09:18 +00:00
										 |  |  | 			$('#jot-public').show(); | 
					
						
							|  |  |  | 		} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	}).trigger('change'); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-10-15 15:30:28 +00:00
										 |  |  | 	// Change the event nav menu.tabs on click.
 | 
					
						
							| 
									
										
										
										
											2016-06-17 12:09:18 +00:00
										 |  |  | 	$("body").on("click", "#event-nav > li > a", function(e){ | 
					
						
							|  |  |  | 		e.preventDefault(); | 
					
						
							|  |  |  | 		toggleEventNav(this); | 
					
						
							|  |  |  | 	}); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-10-15 15:30:28 +00:00
										 |  |  | 	// This is experimental. We maybe can make use of it to inject
 | 
					
						
							|  |  |  | 	// some js code while the event modal opens.
 | 
					
						
							| 
									
										
										
										
											2016-06-17 12:09:18 +00:00
										 |  |  | 	//$('body').on('show.bs.modal', function () {
 | 
					
						
							|  |  |  | 	//	enableDisableFinishDate();
 | 
					
						
							|  |  |  | 	//});
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-10-15 15:30:28 +00:00
										 |  |  | 	// Clear some elements (e.g. the event-preview container) when
 | 
					
						
							|  |  |  | 	// selecting a event nav link so it don't appear more than once.
 | 
					
						
							| 
									
										
										
										
											2016-06-17 12:09:18 +00:00
										 |  |  | 	$('body').on("click", "#event-nav a", function(e) { | 
					
						
							|  |  |  | 		$("#event-preview").empty(); | 
					
						
							|  |  |  | 		e.preventDefault(); | 
					
						
							|  |  |  | 	}); | 
					
						
							|  |  |  | }); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // Load the html of the actual event and incect the output to the
 | 
					
						
							| 
									
										
										
										
											2017-10-15 15:30:28 +00:00
										 |  |  | // event-edit section.
 | 
					
						
							| 
									
										
										
										
											2016-06-17 12:09:18 +00:00
										 |  |  | function doEventPreview() { | 
					
						
							|  |  |  | 	$('#event-edit-preview').val(1); | 
					
						
							|  |  |  | 	$.post('events',$('#event-edit-form').serialize(), function(data) { | 
					
						
							|  |  |  | 		$("#event-preview").append(data); | 
					
						
							|  |  |  | 	}); | 
					
						
							|  |  |  | 	$('#event-edit-preview').val(0); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-09-09 14:10:17 +00:00
										 |  |  | // The following functions show/hide the specific event-edit content
 | 
					
						
							| 
									
										
										
										
											2017-10-15 15:30:28 +00:00
										 |  |  | // in dependence of the selected nav.
 | 
					
						
							| 
									
										
										
										
											2016-06-17 12:09:18 +00:00
										 |  |  | function eventAclActive() { | 
					
						
							|  |  |  | 	$("#event-edit-wrapper, #event-preview, #event-desc-wrapper").hide(); | 
					
						
							|  |  |  | 	$("#event-acl-wrapper").show(); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | function eventPreviewActive() { | 
					
						
							|  |  |  | 	$("#event-acl-wrapper, #event-edit-wrapper, #event-desc-wrapper").hide(); | 
					
						
							|  |  |  | 	$("#event-preview").show(); | 
					
						
							|  |  |  | 	doEventPreview(); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | function eventEditActive() { | 
					
						
							|  |  |  | 	$("#event-acl-wrapper, #event-preview, #event-desc-wrapper").hide(); | 
					
						
							|  |  |  | 	$("#event-edit-wrapper").show(); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-10-15 15:30:28 +00:00
										 |  |  | 	// Make sure jot text does have really the active class (we do this because there are some
 | 
					
						
							|  |  |  | 	// other events which trigger jot text.
 | 
					
						
							| 
									
										
										
										
											2016-06-17 12:09:18 +00:00
										 |  |  | 	toggleEventNav($("#event-edit-lnk")); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | function eventDescActive() { | 
					
						
							|  |  |  | 	$("#event-edit-wrapper, #event-preview, #event-acl-wrapper").hide(); | 
					
						
							|  |  |  | 	$("#event-desc-wrapper").show(); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-10-15 15:30:28 +00:00
										 |  |  | // Give the active "event-nav" list element the class "active".
 | 
					
						
							| 
									
										
										
										
											2016-06-17 12:09:18 +00:00
										 |  |  | function toggleEventNav (elm) { | 
					
						
							| 
									
										
										
										
											2017-10-15 15:30:28 +00:00
										 |  |  | 	// Select all li of #event-nav and remove the active class.
 | 
					
						
							| 
									
										
										
										
											2016-06-17 12:09:18 +00:00
										 |  |  | 	$(elm).closest("#event-nav").children("li").removeClass("active"); | 
					
						
							| 
									
										
										
										
											2017-10-15 15:30:28 +00:00
										 |  |  | 	// Add the active class to the parent of the link which was selected.
 | 
					
						
							| 
									
										
										
										
											2016-06-17 12:09:18 +00:00
										 |  |  | 	$(elm).parent("li").addClass("active"); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-10-15 15:30:28 +00:00
										 |  |  | // Disable the input for the finish date if it is not available.
 | 
					
						
							| 
									
										
										
										
											2016-06-17 12:09:18 +00:00
										 |  |  | function enableDisableFinishDate() { | 
					
						
							|  |  |  | 	if( $('#id_nofinish').is(':checked')) | 
					
						
							|  |  |  | 		$('#id_finish_text').prop("disabled", true); | 
					
						
							|  |  |  | 	else | 
					
						
							|  |  |  | 		$('#id_finish_text').prop("disabled", false); | 
					
						
							|  |  |  | } |