/* Javascript: EventON functions for all calendars version: 0.1 */ (function($){ // return all filter values for given calendar $.fn.evoGetFilters = function(){ var ev_cal = $(this); var evodata = ev_cal.find('.evo-data'); var filters_on = ( evodata.attr('data-filters_on')=='true')?'true':'false'; // creat the filtering data array if exist if(filters_on =='true'){ var filter_section = ev_cal.find('.eventon_filter_line'); var filter_array = []; filter_section.find('.eventon_filter').each(function(index){ var filter_val = $(this).attr('data-filter_val'); if(filter_val !='all'){ var filter_ar = {}; filter_ar['filter_type'] = $(this).attr('data-filter_type'); filter_ar['filter_name'] = $(this).attr('data-filter_field'); if($(this).attr('data-fl_o')=='NOT'){ filter_ar['filter_op']='NOT IN'; } filter_ar['filter_val'] = filter_val; filter_array.push(filter_ar); } }); }else{ var filter_array =''; } return filter_array; } // get shortcode arguments $.fn.evo_shortcodes = function(){ var ev_cal = $(this); var shortcode_array ={}; ev_cal.find('.cal_arguments').each(function(){ $.each(this.attributes, function(i, attrib){ var name = attrib.name; if(attrib.name!='class' && attrib.name!='style' && attrib.value !=''){ name__ = attrib.name.split('-'); shortcode_array[name__[1]] = attrib.value; } }); }); return shortcode_array; } $.fn.evo_item_shortcodes = function(){ var OBJ = $(this); var shortcode_array ={}; OBJ.each(function(){ $.each(this.attributes, function(i, attrib){ var name = attrib.name; if(attrib.name!='class' && attrib.name!='style' && attrib.value !=''){ name__ = attrib.name.split('-'); shortcode_array[name__[1]] = attrib.value; } }); }); return shortcode_array; } // get evo data for a given calendar $.fn.evo_getevodata = function(){ var ev_cal = $(this); var evoData = {}; ev_cal.find('.evo-data').each(function(){ $.each(this.attributes, function(i, attrib){ var name = attrib.name; if(attrib.name!='class' && attrib.name!='style' ){ name__ = attrib.name.split('-'); evoData[name__[1]] = attrib.value; } }); }); return evoData; } // update main calendar AJAX data args with eventon other vals that may been passed $.fn.evo_otherVals = function(opt){ var defaults = { data_arg: '', }; var options = $.extend({}, defaults, opt); var cal_head = $(this); cal_head.find('.eventon_other_vals').each(function(){ if($(this).val()!=''){ options.data_arg[$(this).attr('name')] = $(this).val(); } }); return options.data_arg; } // eventon loading functions // v 2.4.5 $.fn.evo_loader_animation = function(opt){ var defaults = { direction:'start' } var OPT = $.extend({}, defaults, opt); if(OPT.direction == 'start'){ $(this).find('#eventon_loadbar').slideDown(); }else{ $(this).find('#eventon_loadbar').slideUp(); } } }(jQuery));