(function($) {
	function render_map( $el ) {
		var $markers = $el.find('.marker');
		
		var args = {
			zoom		: 16,
			center		: new google.maps.LatLng(0, 0),
			mapTypeId	: google.maps.MapTypeId.ROADMAP
		};
		
		var map = new google.maps.Map( $el[0], args);
		
		map.markers = [];
		
		$markers.each(function(){
			
			add_marker( $(this), map );
			
		});
		
		center_map( map );
	}
	
	
		$('.btn-search').on('click', function() {
			$('.top-search').slideToggle();
		});
		$('.close-search').on('click', function() {
			$('.top-search').slideUp();
		});
		
	function add_marker( $marker, map ) {
		
		var latlng = new google.maps.LatLng( $marker.attr('data-lat'), $marker.attr('data-lng') );
		
		var marker = new google.maps.Marker({
			position	: latlng,
			map			: map,
			icon		: {
						path: google.maps.SymbolPath.CIRCLE,
						scale: 10,
						fillColor: "#d52525",
						fillOpacity: 1,
						strokeWeight: 2,
						strokeColor: "#c81211"
			},
			optimized: true
		});
		
		map.markers.push( marker );
		
		if( $marker.html() ) {
			
			var infowindow = new google.maps.InfoWindow({
				maxWidth	: 260,
				content		: $marker.html()
			});
			
			lastWindow = null;
			
			google.maps.event.addListener(marker, 'click', function() {
				if (lastWindow) lastWindow.close();
				infowindow.open( map, marker );
				lastWindow = infowindow;
			});
		}
	}
	
	function center_map( map ) {
		
		var bounds = new google.maps.LatLngBounds();
		
		$.each( map.markers, function( i, marker ){
			
			var latlng = new google.maps.LatLng( marker.position.lat(), marker.position.lng() );
			
			bounds.extend( latlng );
		});
		
		if( map.markers.length == 1 ) {
			map.setCenter( bounds.getCenter() );
			map.setZoom( 16 );
		} else	{
			map.fitBounds( bounds );
		}
	}
	
	$(document).ready(function(){
		var rtlCond = document.documentElement.lang == "ar" ? true : false;
		
		$('.acf-map').each(function(){
			render_map( $(this) );
		});
		
		AOS.init({once: true});
		window.addEventListener('load', AOS.refresh);
		
		//$('.js-carousel').slick();
		
		$('.js-carousel').slick({
            // slidesToShow: 4,
            // variableWidth: true,
            
        });
        
        // $('.carousel-events').slick({
            // slidesToShow: 4,
            // variableWidth: true,
            
        // });
        
        
		
		$(window).scroll(function () {
			var currentScrollTop = $(window).scrollTop(),
			Header = $('.navbar');
			if (currentScrollTop > 50) {
				Header.addClass('sticky');
			} else {
				Header.removeClass('sticky');
			}
		}).scroll();
		
		
		var lastScrollTop = 0, delta = 15;
		$(window).scroll(function(event){
			var st = $(this).scrollTop();

			if(Math.abs(lastScrollTop - st) <= delta)
				
			return;
			
			if ( (st > lastScrollTop) && (lastScrollTop>40) ) {
				$('.navbar').addClass('unpinned');
			} else {
				$('.navbar').removeClass('unpinned');
			}
			lastScrollTop = st;
		});
		
		function toggleNavbarMethod() {
			if ($(window).width() > 768) {
				$('.navbar-nav .dropdown').on('mouseover', function(){
					if (! $(this).children('.dropdown-menu.show').length) {
						$('.navbar-nav .dropdown-menu, .navbar-nav .dropdown').removeClass('show');
						$(this).addClass('show');
						$('.dropdown-menu', this).addClass('show');
					}
					DataSrc = $('.nav-link', this).attr('data-src');
					if (typeof DataSrc !== 'undefined') {
						
						$('.navbar-left-img').fadeTo(function() {
							$(this).css("background-image", "url(" + DataSrc + ")");
						}).delay(200).fadeTo('fast', 1);
					}
				});
			} else {
				$('.navbar-nav .dropdown').off('mouseover');
			}
		}  
		toggleNavbarMethod();
		$(window).resize(toggleNavbarMethod);
		
		$('#navigation').on('shown.bs.collapse', function() {
			$('.navbar').addClass('shown');
		}).on('hidden.bs.collapse', function() {
			$('.navbar').removeClass('shown');
		});
		
		$('.accordion').not('.no-scroll').on('shown.bs.collapse', function (e) {
			var panel = $(this).find('.collapse.show').parent();
			var headerHeight = $('.navbar').outerHeight();
			$('html, body').animate({
				scrollTop: panel.offset().top - headerHeight
			}, 500);
		});
		
		$('.accordion-reverse').on('shown.bs.collapse', function (e) {
			var panel = $(this).find('.card-first > .collapse.show').parent();
			var headerHeight = $('.navbar').outerHeight();
			$(".js-carousel").slick("refresh");
			$('html, body').animate({
				scrollTop: panel.offset().top - headerHeight
			}, 500);
		});
		
		if ( $('#sdgWrapper').length ) {
			$('.sdg__head--title').each(function(i, obj) {
				if ($(this).text().length <= 15) {
					$(this).css('max-width', '63px');
				} else {
					$(this).css('max-width', '93px');
				}
			});
			
			var i = 0;
			$('.sdg-grid-item').each(function() {
			  var widthCalc = 10 * $(this).data('post-number');
			 // if($(this).data('post-number') == 0 || $(this).data('post-number') == 1) {
				// $(this).css({'flex': '1 1 12.5%' })
			 // } else if ($(this).data('post-number') == 2) {
				// $(this).css({'flex': '1 1 17%' })
			 // }  else if ($(this).data('post-number') == 3) {
				// $(this).css({'flex': '1 1 160px' })
			 // } else if ($(this).data('post-number') == 4) {
				// $(this).css({'flex': '1 1 23%' })
			 // } else {
				// $(this).css({'flex': '1 1 calc(12.5% + ' + widthCalc + 'px)' })
			 // }
			});
		}
		
		var PrevThumbinalFirst = $(".carousel-focus .js-slide:last-child").children(".media").find("img").attr("src");
		$(".carousel-focus .slick-prev .arrow-thumbnail").css({ "background-image":"url(" + PrevThumbinalFirst + ")"})
		var NextThumbinalFirst = $(".carousel-focus .js-slide:first-child").next().next().children(".media").find("img").attr("src");
		$(".carousel-focus .slick-next .arrow-thumbnail").css({ "background-image":"url(" + NextThumbinalFirst + ")"})
		$(".carousel-focus").on('afterChange', function(event, slick, currentSlide){ 
			var PrevThumbinal = $(".carousel-focus .js-slide.slick-active").prev(".js-slide").children(".media").find("img").attr("src");
			$(".carousel-focus .slick-prev .arrow-thumbnail").css({ "background-image":"url(" + PrevThumbinal + ")"})
			var NextThumbinal = $(".carousel-focus .js-slide.slick-active").next(".js-slide").children(".media").find("img").attr("src");
			$(".carousel-focus .slick-next .arrow-thumbnail").css({ "background-image":"url(" + NextThumbinal + ")"})   
		});
		
		$('.scrollpane').slimScroll({
			height: '300px',
			alwaysVisible: true,
			disableFadeOut: true,
			color: '#ffffff4d',
			railVisible: true,
			borderRadius: '0px',
			railBorderRadius: '0px',
			wheelStep: 10,
			railColor: '#ffffff4d',
			railOpacity: 0.2
		});
		
		var $videoSrc;  
		$('.play-button').click(function() {
			$videoSrc = $(this).attr('href');
		});
		
	
		
	
		
		$('#videoModal').on('shown.bs.modal', function (e) {
			$("#video").attr('src',$videoSrc + "?autoplay=1&amp;modestbranding=1&amp;showinfo=0" );
		});
		$('#videoModal').on('hide.bs.modal', function (e) {
			$("#video").attr('src','');
		});
		
		$('.play-button-wrapper').on('click', function() {
			$(this).siblings('.embed-player-hidden')[0].src += "?autoplay=1";
			$(this).siblings('.embed-player-hidden').show();
			$(this).siblings('.video-cover').css('opacity', 0);
			$(this).hide();
		});
		
		$('.btn-wheel').on('click', function() {
			$(this).addClass('wheel-spin-reverse');
			$(this).toggleClass('wheel-spin');
			$(this).parent().toggleClass('show');
			$(this).parent().next('.sdg-badge-wrap').toggleClass('show');
		});
		
		$('.js-select').select2({
			minimumResultsForSearch: Infinity,
			maximumSelectionLength: 3
		});
		
		/* $('#filter').submit(function(){
			var filter = $('#filter');
			$.ajax({
				url:filter.attr('action'),
				data:filter.serialize(), 
				type:filter.attr('method'), 
				beforeSend:function(xhr){
					filter.find('.btn').text('Processing...'); 
				},
				success:function(data){
					filter.find('.btn').text('Apply filter'); 
					$('#response').html(data); 
				}
			});
			return false;
		}); */
		
		
		$('#kaust_loadmore').click(function(){
		var str_more = $(this).text();
		  $.ajax({
			url : kaust_loadmore_params.ajaxurl, // AJAX handler
			data : {
			  'action': 'loadmorebutton', // the parameter for admin-ajax.php
			  'query': kaust_loadmore_params.posts, // loop parameters passed by wp_localize_script()
			  'page' : kaust_loadmore_params.current_page // current page
			},
			type : 'POST',
			beforeSend : function ( xhr ) {
			  $('#kaust_loadmore').text('Loading...'); // some type of preloader
			},
			success : function( posts ){
			  if( posts ) {

				$('#kaust_loadmore').text(str_more);
				$('#response').append( posts ); // insert new posts
				kaust_loadmore_params.current_page++;

				if ( kaust_loadmore_params.current_page == kaust_loadmore_params.max_page ) 
				  $('#kaust_loadmore').hide(); // if last page, HIDE the button

			  } else {
				$('#kaust_loadmore').hide(); // if no data, HIDE the button as well
				$('#kaust_loadmore').text(str_more);
			  }
			}
		  });
		  return false;
		});
		
		/* FILTERING FUNCTION */
		
		
		    
		    $( "#filter" ).submit(function( event ) {
                  
                    event.preventDefault();
                    return false;
                });
		$('#filter').change(function(){
		    
		    $("#loader-events-filter").show(); 
			var filter = $('#filter');
			$.ajax({
			url : kaust_loadmore_params.ajaxurl,
			data:filter.serialize(),  // form data
			dataType : 'json', // this data type allows us to receive objects from the server
			type:filter.attr('method'),
			success : function( data ){
				kaust_loadmore_params.current_page = 1; 
				kaust_loadmore_params.posts = data.posts;
				kaust_loadmore_params.max_page = data.max_page; 

				$('#response').html(data.content).hide();
				$(".active-filter-link-event").trigger('click');
				$('#response').show();
				
				if ( data.max_page < 2 ) {
					$('#kaust_loadmore').hide();
				} else {
					$('#kaust_loadmore').show();
				}
				
				$("#loader-events-filter").hide(); 
			}
		  });
		  
		  return false;
		});
		
		
		var prev_events =[];
		
		$('.prev-event-div').each(function(){
		    
		    prev_events.push($(this));
		    
		});
		
		if (prev_events.length>0)
		{
		    $('.prev-event-div').remove();
		    
		   prev_events.reverse();
		  
		   $.each(prev_events, function( index, value ) {
             
            //   console.log(value[0]);
              $(".events-prev-upcom").append(value[0]);
              
            });
            
		}
		
		
		
		$('.events-filtering-link').click(function() {
		    $("#loader-events-filter").show();
		    
		    $current_in_show= $("."+$(".active-filter-link-event").attr('id'));
		    
			$element_id = $(this).attr('id');
			$(".active-filter-link-event").removeClass('active-filter-link-event');
			$(this).addClass('active-filter-link-event');
			//$(".single-event-box").fadeOut();
			
			if($current_in_show.length > 0)
			{
			
			  $current_in_show.fadeOut( 'slow', function(){ 
                 $("."+$element_id).fadeIn();
                 $("#loader-events-filter").hide();
               });
               
			}else{
			    
			       $("."+$element_id).fadeIn();
			       	$("#loader-events-filter").hide();
                 
			}
			return false;
		});
		
		$('.show-chart').click(function() {
		  //  active-chart-link
		    
		    $current_in_show= $("#chart-"+$(".active-chart-link").attr('id'));
		    
			$element_id = $(this).attr('id');
			$(".active-chart-link").removeClass('active-chart-link');
			$(this).addClass('active-chart-link');
			//$(".single-event-box").fadeOut();
			
			if($current_in_show.length > 0)
			{
			
			  $current_in_show.fadeOut( 'slow', function(){ 
                 $("#chart-"+$element_id).fadeIn();
                 
               });
               
			}else{
			    
			       $("#chart-"+$element_id).fadeIn();
			       	
                 
			}
			return false;
		});
		
		if ( !$('.fullscreen-video').length  &&  $('video').length ) {
			$('video').mediaelementplayer({
				features : ['playpause','current','progress','duration','volume','fullscreen','quality'],
				stretching : "responsive",
				enableAutosize : false,
				startVolume: 0.5,
				success: function (mediaElement, domObject) {
						mediaElement.setVolume(0.5);
						mediaElement.addEventListener("volumechange", function() {
							mediaElement.setVolume(0.5)
								}, false);
				}
			});
		}
		
		$('a[href*=\\#]:not([href=\\#], [data-toggle], [data-target], [data-slide])').on('click', function() {
			if (location.pathname.replace(/^\//,'') == this.pathname.replace(/^\//,'') && location.hostname == this.hostname) {
				var target = $(this.hash);
				var headerHeight = $('.navbar').outerHeight();
				target = target.length ? target : $('[name=' + this.hash.slice(1) +']');
				if (target.length) {
					$('html,body').animate({
					scrollTop: target.offset().top - headerHeight
				}, 1000);
				return false;
				}
			}
		});
		
		$('.list-anchor-section').mousedown(function (event) {
			$(this)
			  .data('down', true)
			  .data('x', event.clientX)
			  .data('scrollLeft', this.scrollLeft)
			  .addClass("dragging");

			return false;
		  }).mouseup(function (event) {
			$(this)
			  .data('down', false)
			  .removeClass("dragging");
		  }).mousemove(function (event) {
			if ($(this).data('down') == true) {
			  this.scrollLeft = $(this).data('scrollLeft') + $(this).data('x') - event.clientX;
			}
		  }).mouseout(function() {
            $(this).css('overflow','auto');			  
		});
		
		var btnBackToTop = $('.btn-back-to-top');

		$(window).scroll(function() {
		  if ($(window).scrollTop() > 300) {
			btnBackToTop.addClass('show');
		  } else {
			btnBackToTop.removeClass('show');
		  }
		});

		btnBackToTop.on('click', function(e) {
		  e.preventDefault();
		  $('html, body').animate({scrollTop:0}, '300');
		});
		
	});
	
})(jQuery);