// jQuery START -->
jQuery.noConflict();
jQuery(document).ready(function($) {

// var hidden_module_id = jQuery('#codedesign_responsive_events_module_id').val();
var website_current_language = jQuery('#website_current_language').val();

load_calendar('','',''+website_current_language+'','events_listing_tabs_ajax_calendar');

// trigger events for AJAX calendar from tab
jQuery('a.st_tab').on('click', function(event){
	event.preventDefault();
	var display_year 	= jQuery(this).attr('data-date-year');
	var display_month 	= jQuery(this).attr('data-date-month');
	load_calendar(''+display_year+'',''+display_month+'','events_listing_tabs_ajax_calendar');
});

});
// jQuery END -->


function load_calendar (display_year, display_month, display_language, target_element_id) {

	var display_year		= display_year;
	var display_month		= display_month;
	var display_language	= display_language;

	var data		= 'display_year=' + display_year + '&display_month=' + display_month + '&display_language=' + display_language + '';

	jQuery.ajax({
		url			: '/modules/mod_codedesign_responsive_events/assets/ajax/interface/display_calendar_month.php',
		type		: 'POST',
		data		: 'ajax=1&'+data,
		dataType	: 'html',
		cache		: false,
		async		: false,
		success		: function(result){

			jQuery('#'+target_element_id+'').html(result);
			// bind events to new loaded elements
			jQuery('.load_ajax_calendar_month').on('click', function(event){
				
				event.preventDefault();
				
				var display_year 				= jQuery(this).attr('data-date-year');
				var display_month 				= jQuery(this).attr('data-date-month');
				var website_current_language 	= jQuery('#website_current_language').val(); // 2019-12-26
				// alert(display_year + ' - ' + display_month + ' - ' + website_current_language);
				
				load_calendar(''+display_year+'',''+display_month+'',''+website_current_language+'','events_listing_tabs_ajax_calendar');

				/*
				// uncomment to trigger also AJAX calendar when slidingtabs is clicked... loops then in same year only!
				var hidden_module_id = jQuery('#codedesign_responsive_events_module_id').val();
				var display_month_with_leading_zero = ( display_month < 10 ? '0' : '' ) + display_month; // add leading zero
				jQuery('#slidingtabs_'+hidden_module_id+'').find('a[rel=st_tab_content_'+display_month_with_leading_zero+']').trigger('click');				
				*/

			});
			
		}
	});

};



/**
 * @package DJ-Events
 * @copyright Copyright (C) DJ-Extensions.com, All rights reserved.
 * @license DJ-Extensions.com Proprietary Use License
 * @author url: http://dj-extensions.com
 * @author email contact@dj-extensions.com
 * @developer Szymon Woronowski - szymon.woronowski@design-joomla.eu
 */

/*
(function($){
	
	var ModDJEventsCalendarMonth = function(element){
		var self = this;
		
		self.container = jQuery(element);
		self.tablewrap = self.container.find('.djev_calendar_wrap').first();
		self.loader = self.container.find('.djev_loader').first();
		
		self.responseContainer = $('<div style="display: none; visibility: hidden;" />');
		self.responseContainer.appendTo(self.container);
		
		self.days = self.tablewrap.find('.active-day a');
		self.attachDaysEvents(self.days);
		
		$(document.body).on('click', function(e){
			if(!$(e.target).parents('.popover').length) {
				self.days.popover('hide');
				self.days.removeClass('open-day');
			}
		});
		
		self.container.find('.next-month').on('click', function(e){
			e.preventDefault();
			self.sendXhr(1, self.tablewrap.attr('data-month'));
		});
		
		self.container.find('.prev-month').on('click', function(e){
			e.preventDefault();
			self.sendXhr(-1, self.tablewrap.attr('data-month'));
		});
	};
	
	ModDJEventsCalendarMonth.prototype.xhr = null;
	
	ModDJEventsCalendarMonth.prototype.sendXhr = function(direction, lastDate) {
		var self = this;
		
		if (self.xhr && self.xhr.readyState != 4) {
			return;
		}
		
		self.loader.css('display', 'block');
		
		var url = self.container.attr('data-baseurl');
		var mod = self.container.attr('data-module');
		
		self.xhr = $.ajax({
			url			: url,
			method		: 'post',
			data		: 'option=com_djevents&task=getMonth&format=raw&last_date=' + lastDate + '&direction=' + direction + '&module=' + mod
		}).done(function(response) {
			if (response != '') {
				self.setMonth(response);
				
				// codeDESIGN 2019-05
				// get month
				var lastDate_ajax	= lastDate.split('-');
				var lastDate_month	= parseInt(lastDate_ajax[1], 10); // remove leading zero
				// prev- / next-month
				var tab_to_load		= ( direction == '-1' ) ? (lastDate_month-1) : (lastDate_month+1);
				var tab_to_load		= ( tab_to_load < 10 ? '0' : '' ) + tab_to_load; // add leading zero

				var hidden_module_id = jQuery('#codedesign_responsive_events_module_id').val();

				jQuery('#slidingtabs_'+hidden_module_id+'').find('a[rel=st_tab_content_'+tab_to_load+']').trigger('click');				
				
			}
		}).always(function() {
			self.loader.css('display', 'none');
		});
	};
	
	ModDJEventsCalendarMonth.prototype.setMonth = function(response) {
		var self = this;
		self.responseContainer.html(response);
		var days = self.responseContainer.find('.active-day a');
		self.attachDaysEvents(days);
		
		self.tablewrap.replaceWith(self.responseContainer.find('.djev_calendar_wrap'));
		self.responseContainer.empty();
		self.tablewrap = self.container.find('.djev_calendar_wrap').first();
		
		self.days = self.tablewrap.find('.active-day a');
	};
	
	ModDJEventsCalendarMonth.prototype.attachDaysEvents = function(days) {
		var self = this;
		
		days.popover({animation: false, html: true, placement: 'top', trigger: 'manual', container: 'body'});
		
		days.on('mouseenter', function(e){
			e.stopPropagation();
			var day = $(this);
			if(day.hasClass('open-day')) return;
			days.popover('hide');
			days.removeClass('open-day');
			day.popover('show');
			day.addClass('open-day');
		});
		days.on('click', function(e){
			e.stopPropagation();
			$(this).trigger('mouseenter');
		});
	};

	$(document).ready(function(){
		$('.djev_calendar_month').each(function(){
			new ModDJEventsCalendarMonth(this);
		});
	});
	
})(jQuery);
*/