(function($){
"use strict";
$.fn.avia_sc_icongrid=function(options){
return this.each(function(){
var icongrid_container=$(this),
icongrid=icongrid_container.find('.avia-icongrid'),
icongrid_cards=icongrid.find('.av-icon-cell-item'),
icongrid_id='#' + icongrid.attr('id'),
min_height=icongrid_container.data('min-height'),
methods={};
icongrid_cards.on('touchend', function(e){
var current=$(this),
container=current.closest('.avia-icongrid');
if(current.hasClass('avia-hover')){
container.find('.av-icon-cell-item').removeClass('avia-hover');
}else{
container.find('.av-icon-cell-item').removeClass('avia-hover');
current.addClass('avia-hover');
}
var links=current.find('a');
if(links.length > 0){
links.off('touchend.aviaIconGridLink').on('touchend.aviaIconGridLink', function(e){
e.preventDefault();
var link=$(this),
container=link.closest('.av-icon-cell-item');
if(! container.hasClass('avia-hover')){
return;
}
e.stopImmediatePropagation();
link.css('opacity', 0.5);
window.location.href=link.attr('href');
});
}
e.preventDefault();
e.stopImmediatePropagation();
});
if(icongrid.hasClass('avia_flip_force_close')){
$('body').on('touchend', function(e){
var flipboxes=$('.avia-icongrid.avia_flip_force_close');
flipboxes.each(function(){
var flipbox=$(this);
flipbox.find('.av-icon-cell-item').removeClass('avia-hover');
});
});
}
methods =
{
buildIconGrid: function (){
this.setMinHeight($(icongrid_id + ' li article'));
},
setMinHeight: function (els){
if(els.length < 2){
return;
}
var elsHeights=new Array(),
front=[],
back=[];
els.css('min-height', '0').each(function (i){
var current=$(this);
if(icongrid.hasClass('avia-icongrid-flipbox')){
front=current.find('.avia-icongrid-front .avia-icongrid-inner');
back=current.find('.avia-icongrid-flipback .avia-icongrid-inner');
}else{
front=current.find('.avia-icongrid-front .avia-icongrid-inner');
back=current.find('.avia-icongrid-content');
elsHeights.push(current.outerHeight(true));
}
if(front.length){
elsHeights.push(front.outerHeight(true));
}
if(back.length){
elsHeights.push(back.outerHeight(true));
}});
if('undefined'!=typeof(min_height)){
var i=parseInt(min_height);
if(! isNaN(i)){
elsHeights.push(i);
}}
var largest=Math.max.apply(null, elsHeights);
els.css('min-height', largest);
if(icongrid.hasClass('avia-icongrid-tooltip')){
var elWidth=els.first().outerWidth(true);
if(largest > elWidth){
els.css('min-height', elWidth);
}}
}};
methods.buildIconGrid();
$(window).on('debouncedresize', function(){
methods.buildIconGrid();
});
});
};}(jQuery));