// ie6 init
if(jQuery.browser.msie && jQuery.browser.version == '6.0'){
    // hide body to mask png loading
    jQuery(document.body).css('display', 'none');
    // domready actions
    jQuery(function(){
        jQuery(document.body).css('display', 'block');
        jQuery(document).pngFix();
    });
}


jQuery(function(){
	
	//Fixes IE Background Images Cacheing Issue
	try {
	//works since IE6SP1
	document.execCommand("BackgroundImageCache", false, true)
	} catch(acold) {/*many will complain, just ignore*/}
	
    // preload
    preLoadImages("/content/dam/infiniti/current-offers/buttons/b_GetQuote_blue_off.png");
    preLoadImages("/content/dam/infiniti/current-offers/buttons/b_Carrat_blue_off.png");   
    preLoadImages("/content/dam/infiniti/current-offers/buttons/b_GetQuote_blue_on.png");
    preLoadImages("/content/dam/infiniti/current-offers/buttons/b_Carrat_blue_on.png");
    
    preLoadImages("/apps/nna/docroot/img/current-offers/karot_cta.png");
    preLoadImages("/apps/nna/docroot/img/current-offers/karot_cta_hover.png");
    
    preLoadImages("/apps/nna/docroot/img/current-offers/models-pricing.png");
    preLoadImages("/apps/nna/docroot/img/current-offers/key-features.png");
    preLoadImages("/apps/nna/docroot/img/current-offers/photos-360s.png");
    preLoadImages("/apps/nna/docroot/img/current-offers/colors.png");
    preLoadImages("/apps/nna/docroot/img/current-offers/specs-options.png");
    
    preLoadImages("/apps/nna/docroot/img/current-offers/models-pricing_over.png");
    preLoadImages("/apps/nna/docroot/img/current-offers/key-features_over.png");
    preLoadImages("/apps/nna/docroot/img/current-offers/photos-360s_over.png");
    preLoadImages("/apps/nna/docroot/img/current-offers/colors_over.png");
    preLoadImages("/apps/nna/docroot/img/current-offers/specs-options_over.png");
    
    
    // disclaimer popups
    jQuery("#offers .details_link").click(showDetails);
    jQuery("#offers .gPopUpDisplay .gClose").click(hideDetails);
    
    // back to top links
    jQuery("#offers .topLink").click(backToTop);
    
    // highlight all filter on load
    jQuery("#all").attr('checked', 'checked');
    
    // model filter       
    jQuery("#g_sedan, #g_coupe, #ipl_g_coupe, #g_convertible, #m_sedan, #fx, #ex, #qx").bind('click', function(){

        
          var id = jQuery(this).attr('id');
          
          var mydiv = '#div' + id;
          var mydiv2 = '#div' + id;
          var mydiv3 = '#div' + id;
          if ((id=='m_sedan') || (id=='fx') || (id=='g_sedan') || (id=='ipl_g_coupe')){
              mydiv2 = '#div' + id + '2';
              mydiv3 = '#div' + id + '3';
          
          }
          var n = jQuery("#modelGroup input:checked").length;
          
          if (jQuery(this).is(':checked')) {
                if (n === 1)  {
                
                      jQuery("#all").attr('checked', '');
                      jQuery(".offer-sort-wrapper").hide();
                      jQuery(mydiv).show();
                      if (mydiv2!=mydiv){
                          jQuery(mydiv2).show();
                           jQuery(mydiv3).show();
                           //alert(mydiv3)
                      }
                      
                }
                else {
                      jQuery(mydiv).show();
                      if (mydiv2!=mydiv){
                          jQuery(mydiv2).show();
                           jQuery(mydiv3).show();
                            //alert(mydiv3)
                      }
                }
          }
          else {
                      if (n === 0) {
                
                      jQuery("#all").attr('checked', 'checked');
                      jQuery(".offer-sort-wrapper").show();
                }
                else {
                
                      jQuery(mydiv).hide();
                      jQuery(mydiv2).hide();
                       jQuery(mydiv3).hide();
                      
                }
          }
    });
    
    // all filter
    jQuery("#all").bind('click', function(){
    
          jQuery("#modelGroup :checkbox").attr('checked', '');
          if (this.checked) {
                jQuery('.offer-sort-wrapper').show();
          }
          else {
                jQuery(this).attr('checked', 'checked');
                jQuery('.offer-sort-wrapper').show();
          }
    });
    
    // first sort based on url parameter also do not sort in edit mode
    if(!crmEditMode){
        if(vehicleParam != null){
            switch (vehicleParam)
            {
                case 'g_sedan': 
                    crmEvent4();
                    selectedVehicleGSedan();
                    break;
                case 'g_coupe':
                    crmEvent3();
                    selectedVehicleGCoupe();
                    break;
                case 'ipl_g_coupe':
                    crmEvent9();
                    selectedVehicleIPLGCoupe();
                    break;  
                case 'g_convertible':
                    crmEvent2();
                    selectedVehicleGConvertible();                  
                    break;
                case 'm_sedan':
                    crmEvent5();
                    displayVehicleMSedans();
                    break;          
                case 'ex':
                    crmEvent8();
                    displayVehicleExCrossover();
                    break;
                case 'fx':
                    crmEvent6();
                    displayVehicleFxSuvs();
                    break;
                case 'qx':
                    crmEvent7();
                    displayVehicleQxTrucks();                   
                    break;
                default:
                    selectedVehicleGSedan();
                    crmEvent1();
            }
        }
        else{
            crmEvent1();
        }
    }
    jQuery(".details_link").click(showDetails);
    jQuery(".gPopUpDisplay .gClose").click(hideDetails);
    
});

function hideDiv(divName){
  thisDiv = document.getElementById(divName);
  if (thisDiv){            
      thisDiv.style.display = "none";
    
  } else {
    alert("Error: Could not locate div with id: " + divName);
  }
}


function selectedVehicleGSedan(){ 
    jQuery("#divg_sedan").after(jQuery("#divg_sedan2"));
    jQuery("#divg_sedan2").after(jQuery("#divg_coupe"));
    jQuery("#divg_coupe").after(jQuery("#divipl_g_coupe"));
    jQuery("#divipl_g_coupe").after(jQuery("#divg_convertible"));
    jQuery("#divg_convertible").after(jQuery("#divm_sedan"));
    jQuery("#divm_sedan").after(jQuery("#divm_sedan3"));
    jQuery("#divm_sedan3").after(jQuery("#divm_sedan2"));
    jQuery("#divm_sedan2").after(jQuery("#divex"));
    jQuery("#divex").after(jQuery("#divfx"));
    jQuery("#divfx").after(jQuery("#divfx2"));
    jQuery("#divfx2").after(jQuery("#divqx"));
    
}

function selectedVehicleGCoupe(){              
    jQuery("#divg_sedan").before(jQuery("#divg_convertible"));
    jQuery("#divg_convertible").before(jQuery("#divg_coupe"));
    jQuery("#divg_coupe").after(jQuery("#divipl_g_coupe"));
    jQuery("#divipl_g_coupe").after(jQuery("#divg_convertible"));
    jQuery("#divg_sedan").after(jQuery("#divg_sedan2"));
    jQuery("#divg_sedan2").after(jQuery("#divm_sedan"));
    jQuery("#divm_sedan").after(jQuery("#divm_sedan3"));
    jQuery("#divm_sedan3").after(jQuery("#divm_sedan2"));
    jQuery("#divm_sedan2").after(jQuery("#divex"));
    jQuery("#divex").after(jQuery("#divfx"));
    jQuery("#divfx").after(jQuery("#divfx2"));
    jQuery("#divfx2").after(jQuery("#divqx"));
    
}

function selectedVehicleIPLGCoupe(){  
    jQuery("#divg_sedan").before(jQuery("#divg_convertible"));
    jQuery("#divg_convertible").before(jQuery("#divipl_g_coupe"));
    jQuery("#divipl_g_coupe").after(jQuery("#divg_coupe"));
    jQuery("#divg_sedan").after(jQuery("#divg_sedan2"));
    jQuery("#divg_sedan2").after(jQuery("#divm_sedan"));
    jQuery("#divm_sedan").after(jQuery("#divm_sedan3"));
    jQuery("#divm_sedan3").after(jQuery("#divm_sedan2"));
    jQuery("#divm_sedan2").after(jQuery("#divex"));
    jQuery("#divex").after(jQuery("#divfx"));
    jQuery("#divfx").after(jQuery("#divfx2"));
    jQuery("#divfx2").after(jQuery("#divqx"));
    
}

function selectedVehicleGConvertible(){               
    jQuery("#divg_sedan").before(jQuery("#divg_convertible"));
    jQuery("#divg_sedan").after(jQuery("#divg_sedan2"));
    jQuery("#divg_sedan2").after(jQuery("#divg_coupe"));
    jQuery("#divg_coupe").after(jQuery("#divipl_g_coupe"));
    jQuery("#divipl_g_coupe").after(jQuery("#divm_sedan"));
    jQuery("#divm_sedan").after(jQuery("#divm_sedan3"));
    jQuery("#divm_sedan3").after(jQuery("#divm_sedan2"));
    jQuery("#divm_sedan2").after(jQuery("#divex"));
    jQuery("#divex").after(jQuery("#divfx"));
    jQuery("#divfx").after(jQuery("#divfx2"));
    jQuery("#divfx2").after(jQuery("#divqx"));
    
}

function displayVehicleGSedans(){        
    jQuery("#divg_convertible").before(jQuery("#divg_coupe"));
    jQuery("#divg_coupe").before(jQuery("#divg_sedan"));
}

function displayVehicleMSedans(){                
     jQuery("#divg_sedan").before(jQuery("#divm_sedan"));
     jQuery("#divm_sedan").after(jQuery("#divm_sedan3"));
     jQuery("#divm_sedan3").after(jQuery("#divm_sedan2"));
     jQuery("#divg_sedan").after(jQuery("#divg_sedan2"));
     jQuery("#divg_sedan2").after(jQuery("#divg_coupe"));
     jQuery("#divg_coupe").after(jQuery("#divipl_g_coupe"));
     jQuery("#divipl_g_coupe").after(jQuery("#divg_convertible"));
     jQuery("#divg_convertible").after(jQuery("#divex"));
     jQuery("#divex").after(jQuery("#divfx"));
     jQuery("#divfx").after(jQuery("#divfx2"));
     jQuery("#divfx2").after(jQuery("#divqx"));
} 

function displayVehicleFxSuvs(){
    jQuery("#divg_sedan").before(jQuery("#divfx"));               
    jQuery("#divfx").after(jQuery("#divfx2"));
    jQuery("#divfx2").after(jQuery("#divqx"));
    jQuery("#divqx").after(jQuery("#divex"));
    jQuery("#divex").after(jQuery("#divg_sedan"));
    jQuery("#divg_sedan").after(jQuery("#divg_sedan2"));
    jQuery("#divg_sedan2").after(jQuery("#divg_coupe"));
    jQuery("#divg_coupe").after(jQuery("#divipl_g_coupe"));
    jQuery("#divipl_g_coupe").after(jQuery("#divg_convertible"));
    jQuery("#divg_convertible").after(jQuery("#divm_sedan"));
    jQuery("#divm_sedan").after(jQuery("#divm_sedan3"));
    jQuery("#divm_sedan3").after(jQuery("#divm_sedan2"));                
}

function displayVehicleExCrossover(){
    jQuery("#divg_sedan").before(jQuery("#divex"));
    jQuery("#divex").after(jQuery("#divfx"));
    jQuery("#divfx").after(jQuery("#divfx2"));
    jQuery("#divfx2").after(jQuery("#divqx"));
    jQuery("#divqx").after(jQuery("#divg_sedan"));
    jQuery("#divg_sedan").after(jQuery("#divg_sedan2"));
    jQuery("#divg_sedan2").after(jQuery("#divg_coupe"));
    jQuery("#divg_coupe").after(jQuery("#divipl_g_coupe"));
    jQuery("#divipl_g_coupe").after(jQuery("#divg_convertible"));
    jQuery("#divg_convertible").after(jQuery("#divm_sedan"));
    jQuery("#divm_sedan").after(jQuery("#divm_sedan3"));       
    jQuery("#divm_sedan3").after(jQuery("#divm_sedan2"));         
}

function displayVehicleQxTrucks(){
    jQuery("#divg_sedan").before(jQuery("#divqx"));
    jQuery("#divqx").after(jQuery("#divfx"));
    jQuery("#divfx").after(jQuery("#divfx2"));
    jQuery("#divfx2").after(jQuery("#divex"));               
    jQuery("#divex").after(jQuery("#divg_sedan"));
    jQuery("#divg_sedan").after(jQuery("#divg_sedan2"));
    jQuery("#divg_sedan2").after(jQuery("#divg_coupe"));
    jQuery("#divg_coupe").after(jQuery("#divipl_g_coupe"));
    jQuery("#divipl_g_coupe").after(jQuery("#divg_convertible"));
    jQuery("#divg_convertible").after(jQuery("#divm_sedan"));
    jQuery("#divm_sedan").after(jQuery("#divm_sedan3")); 
    jQuery("#divm_sedan3").after(jQuery("#divm_sedan2"));                
}

//this function is not exactly the same as in current-offers-retailers.js
function showDetails() {
    var gMain = jQuery('#pageWrap');
    var link = jQuery(this);
    var popup = jQuery(this).parent().children(".gPopUpDisplay").clone(true);
    
    if (jQuery.browser.msie && jQuery.browser.version.substr(0,1) == 6) {
        if(link.hasClass('offerPriceDetailLink')){
            popup.appendTo(gMain).css({
                top: (link.parents('.offerSection').position().top + link.position().top - popup.height())+"px",
                left: ((gMain.width() - popup.width())/2)+"px"
            }).show();
        } else {
            popup.appendTo(gMain).css({
                top: (link.parents('.offerSection').position().top + link.position().top - popup.height())+"px",
                left: ((gMain.width() - popup.width())/2)+"px"
            }).show();
        }
    } else {
        if(link.hasClass('offerPriceDetailLink')){
            popup.appendTo(gMain).css({
                top: (link.position().top + link.offsetParent().position().top) - popup.height() + "px",
                left: ((gMain.width()-popup.width())/2)+"px"
            }).show();
        } else {
            popup.appendTo(gMain).css({
                top: (link.position().top-popup.height())+"px",
                left: ((gMain.width()-popup.width())/2)+"px"
            }).show();
        }
    }  
}

function hideDetails() {
    jQuery(this).parent().parent().remove();
}

function seeAll(offerId) {
    jQuery.scrollTo(offerId, 400);
}

function backToTop() {
    jQuery.scrollTo(".gBody",400);
    return false;
}
