var openErrorMessagesBoxTimer;
var boats;
var lastFacebookFeedId = 0;


function trimAll(sString) {
    if(sString === null || sString == '' || sString == undefined) {
      return false;
    }
    while (sString.substring(0,1) == ' ') {
        sString = sString.substring(1, sString.length);
    }

    while (sString.substring(sString.length-1, sString.length) == ' ') {
        sString = sString.substring(0,sString.length-1);
    }

    return (sString);
}
function validateEmail(email) {
   var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
   if(reg.test(email) == false) {
      return false;
   } else {
       return true;
   }
}

function  openDab() {

    var width = 938;
    var height = 460;

    var pat = /Chrome/;
    var osPat = /Macintosh/;
    if(pat.test(navigator.appVersion) && osPat.test(navigator.appVersion)) {
        width = 940;
        height = 510;
    }

    var url = "http://www.hydrasports.com/dab/"
    var winl = (screen.width - width) / 2;
    var wint = (screen.height - height) / 2;
    var winprops = "scrollbars=no,resizable=no,fullscreen=no,height="+height+",width="+width+",top="+wint+",left="+winl+"";
    w = window.open(url, "", winprops);

    if(window.focus) {
        w.focus() ;
    }
}

function searchKey() {
    var key = document.getElementById('searchKey').value;
    location.href = siteUrl + "search/index/key/" + key
}

function showBoatDetails(boatId) {
    $("#boatDetails .boatInfo").hide();

    if($('#boatDetails').hasClass('visible')) {
        
        $("#boatDetails_" + boatId).fadeIn(function(){
            $("#scrollContainer"+boatId).mCustomScrollbar("vertical",10,"easeOutCirc",1.25,"fixed","yes");
        });
        return;
    }

    $('#boatDetails').fadeIn(function(){
        $(this).addClass('visible');
        $("#boatDetails_" + boatId).fadeIn(function(){
            $("#scrollContainer"+boatId).mCustomScrollbar("vertical",10,"easeOutCirc",1.25,"fixed","yes");
        });

    });
}

function markSelectedBoat(boatId) {
    var imgPath = siteUrl + "images/front/selected.png";
        
    var im = new Image();
    im.src = imgPath;

    $("#boatPanel #boat_" + boatId + " .img").html('<img src="' + imgPath + '" alt="" />');
}

function unmarkSelectedBoat(boatId) {
    $("#boatPanel #boat_" + boatId + " .img").html('');
}

function hideBoatDetails() {
    $('#boatDetails').fadeOut(function(){
        $(this).removeClass('visible')
    });
}

function openBoatDetailPopup(boatId) {
    //alert(boatId)
    var pos = jQuery("#"+boatId+" .img").position();
    var left = pos.left - 20;
    var top = pos.top + 55;
    
    $("#detailPopup").css({top:top,left:left}).fadeIn();
    if($("#detailPopup .loader").length == 0) {
        $("#detailPopup .cont").html('<div class="loader"><!-- --></div>');
    }
    $.ajax({
        url: siteUrl + "boat-compare/popup/boat/" + boatId.replace("compare_boat_",""),
        success: function(response){
            $("#detailPopup .cont").html(response);
        }
    });
}

function resize() {
     var cw = $("#selectedBoatsInfo").width();
     cw = cw - 220;
     $("#selectedBoatsInfo").animate({width:cw},1000,function(){
         if(cw==240) {
            $(this).fadeOut();
         }
     });
}

function addColumnToSpecs(itemsCnt,content) {
     var w = itemsCnt *  220 + 240;
     $("#selectedBoatsInfo").animate({width:w},1000,function(){
         $(".boatCompareInfoLast").before(content);
     });
}

function addBoatToCompareList(boatId) {
    ////boatId = boatId.str_replace("boat_","");
    ////todo ajax and get info about this boat
    ////container -> selected boats

    if($("#compare_boat_"+boatId).hasClass('compared')) {
        alert("This boat is already added to compare list.")

        return false;
    }

    closeDetailsPopup();

    //mark the selected boat
    $("#compare_boat_"+boatId).addClass("compared");

    var itemsCnt = $("#selectedBoats .selected").size();
    if(itemsCnt == 3) {
        $("#compare_boat_"+boatId).removeClass('compared')
        alert('You can not compare more than 3 boats!')
        return;
    }

    var w = ++itemsCnt * 221;
    var t = 1000;
    if(itemsCnt==1) {
        t = 10;
    }

    $("#selectedBoats").animate({width:w},t,function(){
        $(this).append('<div id="selected_'+boatId+'" class="selected" style="display:none"><div class="close"><!-- --></div><div class="loader"><!-- --></div></div>');
        $("#selected_"+boatId).fadeIn();
        $("#selected_"+boatId+" .close").click(function(){
            var selectedId = $(this).parent().attr('id');
            // var cw = $("#selectedBoats").width();
            //  cw = cw - 221;
            $("#"+selectedId).animate({width:0},500,function(){
                $(this).remove();
            })
            $("#specs_boat_"+boatId).animate({width:0},500,function(){
                $(this).remove();
                resize();
            })

            //unmark the selected boat
            $("#compare_boat_"+boatId).removeClass("compared");
        })

         //load boat hero image and title (get title and picture from dom)
//         var boatName = $("#compare_boat_" + boatId + " div:nth-child(2)").html();
//         $("#selected_"+boatId).append('<div class="title">' + boatName + '</div>')

//         $("#selected_"+boatId+" .loader").remove();

         $.ajax({
             url: siteUrl + "boat-compare/compare-info/boat/" + boatId,
             success: function(response){
                 var data = eval('(' + response + ')');
                 $("#selected_"+boatId).prepend('<div class="title">'+data.boatName+"</div>");

                    if(itemsCnt==1) {
                        $(".boatCompareInfoLast").fadeIn(
                            addColumnToSpecs(1,data.specs)
                        )
                    } else {
                        addColumnToSpecs(itemsCnt,data.specs)
                    }

//                         var w = itemsCnt *  220 + 240;
//                         $("#selectedBoatsInfo").animate({width:w},1000,function(){
////                             $("#selectedBoatsInfo .clear").remove();
//                             $(".boatCompareInfoLast").before(data.specs);
////                             $(this).append('<div class="clear"><!-- --></div>');
//
//                         });

                    var im = new Image()
                    im.src=data.heroImage

                    $("#selected_"+boatId).append('<div class="hero"><img width="193" heigh="107" src="'+data.heroImage+'" alt="'+data.boatName+'" /></div>')
                    $("#selected_"+boatId+" .loader").remove();
             }
         });
    });

    return true;
}

function redirectTo(module,action,boat,boatName) {
    
    url = siteUrl + module + "/" + action + "/"
    if(boat!=undefined) {
        url += "boat/" + boat
    }

    if(boatName!=undefined) {
        url += "/" + boatName.replace(' ','');
    }

    location.href = url;
}

function closeDetailsPopup() {
    $("#detailPopup").fadeOut(function(){
        $("#detailPopup .cont").html('<div class="loader"></div>');
    });
    
}

function changeBackground(imagePath) {
    $('body').css("background-image", "url("+imagePath+")");
    $('body').css("background-position", "center 98px");

    $('.boatDetailsInfo').css('display', 'none');
    $('.boatVideoPanel').css('display', 'none');
    $('#closeBtnDetails').css('display', 'none');
}

function homepageAnimation() {
  activeBackground++;

  if(activeBackground >= backgrounds.length) {
      activeBackground = 0;
  }

  var background = backgrounds[activeBackground];
  $('body').css("background-image", "url("+background+")")

  $("#boatsCarousel span").removeClass('boat1Active')
  $("#boatsCarousel span").removeClass('boat2Active')
  $("#boatsCarousel span").removeClass('boat3Active')
  $("#boatsCarousel span").removeClass('boat4Active')
  $("#boatsCarousel span").removeClass('isActive')

  $("#homepagePromos img").hide();
  $("#homepagePromos #title" + (activeBackground+1)).show();

  $("#boat"+(activeBackground+1)).addClass('boat'+(activeBackground+1)+'Active').addClass('isActive')

  animationTimer = setTimeout("homepageAnimation()",animationSpeed);
}

function hideBoatInfoPanel() {
    $(".boatDetailsInfoPanel").fadeOut();
}

function showBoatInfoPanel() {
    if(!$(".boatDetailsInfoPanel").is('visible')) {
        $(".boatDetailsInfoPanel").fadeIn();
    }

}

function getDocumentByYear(year,version){
    $(".panelDocs").html('<span class="loader"></span>');
    $(".panelBuletins").html('<span class="loader"></span>');
    $(".panelOwnManuals").html('<span class="loader"></span>');

    var theUrl = siteUrl + "knowledge-center/get-documents/year/" + year

    if(version) {
        theUrl+="/version/"+version;
    }

    $.ajax({
        url: theUrl,
        success: function(response){
            var data = eval('(' + response + ')');

            if(data.status=="OK") {

                //lets manage pigs
                var pigList  = "<div id='pigsBox' class='docBoxScrollbars' >";
                pigList += "<div class='customScrollBox'>";
                pigList += "<div class='container'>";
                pigList += "<div class='scontent'>";

                for(i=0;i < data.items.pigs.length;i++) {
                    pigList+="<div class='doc'><a href='"+siteUrl+"knowledge-center/download-document/docid/"+data.items.pigs[i].id+"'>"+data.items.pigs[i].name+"</a></div>";
                }

                pigList+='</div>';
                pigList+='</div>';
                pigList+='<div class="dragger_container">';
                pigList+='<div class="dragger"></div>';
                pigList+='</div>';
                pigList+='</div>';
                pigList+='</div>';
                
                $(".panelDocs").html(pigList);
                var childs = $("#pigsBox .scontent .doc").size();
                var h = childs  * 34;

                $("#pigsBox .scontent").height(h)
                jQuery("#pigsBox").mCustomScrollbar("vertical",10,"easeOutCirc",1.25,"fixed","yes")

                //end Pigs
                
                //lets manage manuals => These are actually bulletins !
                var manualList  = "<div id='manualsBox' class='docBoxScrollbars' >";
                manualList += "<div class='customScrollBox'>";
                manualList += "<div class='container'>";
                manualList += "<div class='scontent'>";

                for(i=0;i < data.items.manuals.length;i++) {
                    manualList+="<div class='doc'><a href='"+siteUrl+"knowledge-center/download-document/docid/"+data.items.manuals[i].id+"'>"+data.items.manuals[i].name+"</a></div>";
                }

                manualList+='</div>';
                manualList+='</div>';
                manualList+='<div class="dragger_container">';
                manualList+='<div class="dragger"></div>';
                manualList+='</div>';
                manualList+='</div>';
                manualList+='</div>';
                

                $(".panelBuletins").html(manualList);
                var childs1 = $("#manualsBox .scontent .doc").size();

                var h1 = childs1 * 34
                
                $("#manualsBox .scontent").height(h1)
                jQuery("#manualsBox").mCustomScrollbar("vertical",10,"easeOutCirc",1.25,"fixed","yes")

                //end bulletins !


                // manage owner manuals

                var omList  = "<div id='omBox' class='docBoxScrollbars' >";
                omList += "<div class='customScrollBox'>";
                omList += "<div class='container'>";
                omList += "<div class='scontent'>";

                for(i=0;i < data.items.ownmanuals.length;i++) {
                    omList+="<div class='doc'><a href='"+siteUrl+"knowledge-center/download-owner-manual-document/docid/"+data.items.ownmanuals[i].id+"'>"+data.items.ownmanuals[i].name+"</a></div>";
                }

                omList+='</div>';
                omList+='</div>';
                omList+='<div class="dragger_container">';
                omList+='<div class="dragger"></div>';
                omList+='</div>';
                omList+='</div>';
                omList+='</div>';

                $(".panelOwnManuals").html(omList);
                var children = $("#omBox .scontent .doc").size();
                var hh = children * 34;

                $("#omBox .scontent").height(hh)
                jQuery("#omBox").mCustomScrollbar("vertical",10,"easeOutCirc",1.25,"fixed","yes")

                // and manage owner manuals

            }
        }
    })
}

function hideFrmMessagesPanel() {
    jQuery("#messages").animate({height:0},1000,function(){
        
        jQuery("#messages").html('').hide();
        clearTimeout(openErrorMessagesBoxTimer);
    });

    return true;
}

function fastClose() {
    jQuery("#messages").html('').hide().css('height',0);
    clearTimeout(openErrorMessagesBoxTimer);
}

function submitContactForm() {
    var message = new Array();

    var firstName     = trimAll(jQuery("#firstName").val());
    var lastName      = trimAll(jQuery("#lastName").val());
    var phoneNumber   = trimAll(jQuery("#phoneNumber").val());
    var postalCode    = trimAll(jQuery("#postalCode").val());
    var email         = trimAll(jQuery("#email").val());
    var address       = trimAll(jQuery("#address").val());
    var city          = trimAll(jQuery("#city").val());
    var state         = trimAll(jQuery("#state").val());
    var msg           = trimAll(jQuery("#msg").val());

    jQuery(".contactFrm .redborder").removeClass('redborder')

    if(firstName=="") {
        message[message.length] = "First name is required";
        jQuery("#firstName").addClass('redborder');
    }

    if(lastName=="") {
        message[message.length] = "Last name is required";
        jQuery("#lastName").addClass('redborder');
    }

    if(email=="") {
        message[message.length] = "Email is required";
        jQuery("#email").addClass('redborder');
    } else {
        if(!validateEmail(email)) {
            message[message.length] = "Email is invalid";
            jQuery("#email").addClass('redborder');
        }
    }

    if(phoneNumber=="") {
        message[message.length] = "Phone Number is required";
        jQuery("#phoneNumber").addClass('redborder');
    }

    if(msg=="") {
        message[message.length] = "Message is required";
        jQuery("#msg").addClass('redborder');
    }

    if(message.length > 0) {
        var messageList = message.join("<br />");
        var img = "<img src='"+siteUrl+"images/front/compareClose.png' onclick='fastClose()' />";
        
        jQuery("#messages").html(img + messageList).removeClass('ok').addClass('nok').show().animate({height:100},1000,function(){
            openErrorMessagesBoxTimer = setTimeout('hideFrmMessagesPanel()',4000);
        });
    } else {
        $.ajax({
            url     : siteUrl + 'contact-us/send-email/',
            data    : {'firstName':firstName, 'lastName':lastName, 'email':email,'phoneNumber':phoneNumber,'postalCode':postalCode,'address':address,'city':city,'state':state,'message':msg},
            type    : 'POST',
            dataType: 'JSON',
            async: false,
            success : function(response) {
                if(response == 1) {
                    jQuery("#messages").removeClass('nok').html("Thank You for Contacting Hydra-Sports.  Your message has been sent").addClass('ok').show().animate({height:75},1000,function(){
                        openErrorMessagesBoxTimer = setTimeout('hideFrmMessagesPanel()',4000);
                    });
                    jQuery(".contactFrm input").val('')
                    jQuery(".contactFrm select").val('')
                    jQuery(".contactFrm textarea").val('')
                } else {
                    jQuery("#messages").html('Email could not be sent').addClass('nok').show().animate({height:(message.length * 25)},1000,function(){
                        openErrorMessagesBoxTimer = setTimeout('hideFrmMessagesPanel()',4000);
                    });
                }
            }
        })
    }
}

function getJsonBoats() {
    $.ajax({
        url     : siteUrl + 'request-a-brochure/get-boats/',
        type    : 'POST',
        dataType: 'JSON',
        async: false,
        success : function(response) {
            boats = eval('(' + response + ')');
            for(i=0; i < boats.length; i++) {
                var name = boats[i].name.split("-");
                $("#interestedIn_1").append('<option value="'+boats[i].id+'|'+name[0]+'">'+name[0]+'</option>');
                $("#interestedIn_2").append('<option value="'+boats[i].id+'|'+name[0]+'">'+name[0]+'</option>');
            }
        }
    })
}

function showBoatsBySeries(source,target){
    var serieId = $("#"+source.id).val().split('|');
    serieId = serieId[0];

    $("#"+target+" option").remove();

    for(i=0; i < boats.length; i++) {
        if(boats[i].id == serieId) {

            for(j=0; j < boats[i].boats.length; j++) {
                $("#"+target).append("<option value='"+boats[i].boats[j].name+"'>"+boats[i].boats[j].name+"</option>");
            }
            break;
        }
    }
    
}

function refreshCaptcha() {
    var rand_no = Math.random();
    $("#captcha").attr("src", siteUrl + "request-a-brochure/get-captcha/?i=" + rand_no);
}

function requestBrochure() {
    fastClose();
    var message = new Array();
    jQuery(".contactFrm .redborder").removeClass('redborder')
    
    var firstName     = trimAll(jQuery("#firstName").val());
    var lastName      = trimAll(jQuery("#lastName").val());
    var phoneNumber   = trimAll(jQuery("#phoneNumber").val());
    var zip           = trimAll(jQuery("#zip").val());
    var email         = trimAll(jQuery("#email").val());
    var address       = trimAll(jQuery("#address").val());
    var city          = trimAll(jQuery("#city").val());
    var state         = trimAll(jQuery("#state").val());
    var country         = trimAll(jQuery("#country").val());

    var interestedIn1 = trimAll(jQuery("#interestedIn_1").val());
    var boat1         = trimAll(jQuery("#boats_1").val());

    var interestedIn2 = trimAll(jQuery("#interestedIn_2").val());
    var boat2         = trimAll(jQuery("#boats_2").val());
    

    var comments      = trimAll(jQuery("#comments").val());
    var captcha       = trimAll(jQuery("#securityCode").val());

    var dealerId      = trimAll(jQuery("#dealerId").val());

    var receive_emails        = ($("#receive_emails_yes").attr('checked'))?"Yes":"No";

     if(firstName=="") {
        message[message.length] = "First name is required";
        jQuery("#firstName").addClass('redborder');
    }

    if(lastName=="") {
        message[message.length] = "Last name is required";
        jQuery("#lastName").addClass('redborder');
    }

    if(phoneNumber=="") {
        message[message.length] = "Phone Number is required";
        jQuery("#phoneNumber").addClass('redborder');
    }

    if(zip=="" && (country == "United States" || country=="USA")) {
        message[message.length] = "ZIP is required";
        jQuery("#zip").addClass('redborder');
    }

    if(email=="") {
        message[message.length] = "Email is required";
        jQuery("#email").addClass('redborder');
    }

    if(email) {
        if(!validateEmail(email)) {
            message[message.length] = "Email is invalid";
            jQuery("#email").addClass('redborder');
        }
    }
    /*
    if(comments=="") {
        message[message.length] = "Comments are required";
        jQuery("#comments").addClass('redborder');
    }
    */

    if(captcha=="") {
        message[message.length] = "Security code is required";
        jQuery("#securityCode").addClass('redborder');
    }

     if(message.length > 0) {
        var messageList = message.join("<br />");
        var img = "<img src='"+siteUrl+"images/front/compareClose.png' onclick='fastClose()' />";

        jQuery("#messages").html(img + messageList).removeClass('ok').addClass('nok').show().animate({height:100},1000,function(){
            openErrorMessagesBoxTimer = setTimeout('hideFrmMessagesPanel()',4000);
        });
    } else {

        $.ajax({
            url     : siteUrl + 'request-a-brochure/submit-request/',
            type    : 'POST',
            data    : {'firstName':firstName,'lastName':lastName,'phoneNumber':phoneNumber,'zip':zip,'email':email,
                       'address':address,'city':city,'country':country,'state':state,'interestedIn1':interestedIn1,'boat1':boat1,'interestedIn2':interestedIn2,'boat2':boat2,
                       'comments':comments,'captcha':captcha
                      },
            dataType: 'JSON',
            async: false,
            success : function(response) {
                var data = eval('(' + response + ')');
                var img = "<img src='"+siteUrl+"images/front/compareClose.png' onclick='fastClose()' />";
                
                if(data.status == 'error') {
                    jQuery("#messages").html(img + data.msg).removeClass('ok').addClass('nok').show().animate({height:100},1000,function(){
                        openErrorMessagesBoxTimer = setTimeout('hideFrmMessagesPanel()',4000);
                    });
                }

                if(data.status == 'ok') {
                    jQuery(".contactFrm input").val('')
                    jQuery(".contactFrm select").val('')
                    jQuery(".contactFrm textarea").val('')

                    jQuery("#boats_2 option").remove();
                    jQuery("#boats_1 option").remove();

                    refreshCaptcha();
                    jQuery("#messages").html(img + data.msg).removeClass('nok').addClass('ok').show().animate({height:100},1000,function(){
                        openErrorMessagesBoxTimer = setTimeout('hideFrmMessagesPanel()',4000);
                    });
                }
            }
        })
        
    }
}

function requestTestDrive() {
    fastClose();
    var message = new Array();
    jQuery(".contactFrm .redborder").removeClass('redborder')

    var firstName     = trimAll(jQuery("#firstName").val());
    var lastName      = trimAll(jQuery("#lastName").val());
    var phoneNumber   = trimAll(jQuery("#phoneNumber").val());
    var zip           = trimAll(jQuery("#zip").val());
    var email         = trimAll(jQuery("#email").val());
    var address       = trimAll(jQuery("#address").val());
    var city          = trimAll(jQuery("#city").val());
    var state         = trimAll(jQuery("#state").val());
    var country         = trimAll(jQuery("#country").val());
    var comments      = trimAll(jQuery("#comments").val());
    var captcha       = trimAll(jQuery("#securityCode").val());
    var testDate      = trimAll(jQuery("#driveDate").val());

    var dealerId      = trimAll(jQuery("#dealerId").val()); //?dealer info

    var interestedIn_1  = $("#interestedIn_1").val();
    var boats_1         = $("#boats_1").val();
    
    var interestedIn_2  = $("#interestedIn_2").val();
    var boats_2         = $("#boats_2").val();
    if(firstName=="") {
        message[message.length] = "First name is required";
        jQuery("#firstName").addClass('redborder');
    }

    if(lastName=="") {
        message[message.length] = "Last name is required";
        jQuery("#lastName").addClass('redborder');
    }

    if(phoneNumber=="") {
        message[message.length] = "Phone Number is required";
        jQuery("#phoneNumber").addClass('redborder');
    }

    if(email=="") {
        message[message.length] = "Email is required";
        jQuery("#email").addClass('redborder');
    }

    if(email) {
        if(!validateEmail(email)) {
            message[message.length] = "Email is invalid";
            jQuery("#email").addClass('redborder');
        }
    }

    if(zip=="" && (country == "United States" || country == "USA")) {
        message[message.length] = "ZIP is required";
        jQuery("#zip").addClass('redborder');
    }

    if(testDate=="") {
        message[message.length] = "Test drive date is required";
        jQuery("#driveDate").addClass('redborder');
    }
    /*
    if(comments=="") {
        message[message.length] = "Comments are required";
        jQuery("#comments").addClass('redborder');
    }
    */

    if(captcha=="") {
        message[message.length] = "Security code is required";
        jQuery("#securityCode").addClass('redborder');
    }

    if(message.length > 0) {
        var messageList = message.join("<br />");
        var img = "<img src='"+siteUrl+"images/front/compareClose.png' onclick='fastClose()' />";

        jQuery("#messages").html(img + messageList).removeClass('ok').addClass('nok').show().animate({height:100},1000,function(){
            openErrorMessagesBoxTimer = setTimeout('hideFrmMessagesPanel()',4000);
        });
    } else {

        $.ajax({
            url     : siteUrl + 'test-drive/submit-request/',
            type    : 'POST',
            data    : {'firstName':firstName,'lastName':lastName,'phoneNumber':phoneNumber,'zip':zip,'email':email,'dealerId':dealerId,
                       'address':address,'city':city,'country':country,'state':state,'comments':comments,'captcha':captcha,'testDate':testDate,
                       'interestedIn_1':interestedIn_1,'boats_1':boats_1,'interestedIn_2':interestedIn_2,'boats_2':boats_2
                      },
            dataType: 'JSON',
            async: false,
            success : function(response) {
                var data = eval('(' + response + ')');
                var img = "<img src='"+siteUrl+"images/front/compareClose.png' onclick='fastClose()' />";

                if(data.status == 'error') {
                    jQuery("#messages").html(img + data.msg).removeClass('ok').addClass('nok').show().animate({height:100},1000,function(){
                        openErrorMessagesBoxTimer = setTimeout('hideFrmMessagesPanel()',4000);
                    });
                }

                if(data.status == 'ok') {
                    jQuery(".contactFrm input").val('')
                    jQuery(".contactFrm select").val('')
                    jQuery(".contactFrm textarea").val('')
                    jQuery("#boats_1").html('');
                    jQuery("#boats_2").html('');
                    
                    jQuery("#trade_in").attr('checked','')
                    jQuery("#boat_owner").attr('checked','')

                    refreshCaptcha();
                    jQuery("#messages").html(img + data.msg).removeClass('nok').addClass('ok').show().animate({height:100},1000,function(){
                        openErrorMessagesBoxTimer = setTimeout('hideFrmMessagesPanel()',4000);
                    });
                }
            }
        })

    }
}

function getFacebookFeeds() {
    var feeds = '';
    $.ajax({
        url     : siteUrl + 'community/get-facebook-feed/',
        type    : 'POST',
        dataType: 'JSON',
        async: false,
        success : function(response) {
            var c = eval('(' + response + ')');
            
            if(c.length > 4) c.length = 4;
            feeds +="<div id='fblink'><!-- --></div>";
            for(i=0; i < c.length; i++) {
                
                feeds+="<div class='feed'>";
                feeds+="<div class='avatar'><img src='https://graph.facebook.com/"+c[i].facebookId+"/picture' /></div>"
                feeds+="<div class='msg'><span class='name'>"+c[i].name+": </span>"+c[i].msg+"<br /><span class='date'>"+c[i].updated_time+"</span></div>"
                feeds+="<div class='clear'><!-- --></div>";
                feeds+="</div>";

            }

            $("#facebook").html(feeds);
            $('#fblink').click(function(){ 
                window.open('http://www.facebook.com/HydraSportsBoats') ;
            })
        }
    })
}

function getTwitterFeeds() {
    var feeds = '';
    $.ajax({
        url     : siteUrl + 'community/get-twitter-feed/',
        type    : 'POST',
        dataType: 'JSON',
        async: false,
        success : function(response) {
            var c = eval('(' + response + ')');
            
            if(c.length > 4) c.length = 4;

            feeds += "<div id='twitterlink'><!-- --></div>";
            for(i=0; i < c.length; i++) {

                feeds+="<div class='feed'>";
                feeds+="<div class='avatar'><img src='"+c[i].avatar+"' /></div>"
                feeds+="<div class='msg'><span class='name'>"+c[i].name+": </span>"+c[i].msg+"<br /><span class='date'>"+c[i].created_at+"</span></div>"
                feeds+="<div class='clear'><!-- --></div>";
                feeds+="</div>";

            }

            $("#twitter").html(feeds);
            $('#twitterlink').click(function(){
                window.open('http://twitter.com/#!/hydrasportsboat') ;
            })
        }
    })
}

function findDealer() {
   var dealerZip = document.getElementById('dealerZip').value;
   location.href = siteUrl + "dealer-locator/index/zip/" + dealerZip
}

function findDealerOutsideUSA(){
location.href = siteUrl + "dealer-locator/index/zip/outsideUSA";
}

function closeBoatPanel(both) {
    if(both) {
        jQuery("#boatPanel").hide();
    }
    jQuery("#boatDetails").hide().removeClass('visible');
}

function closeBoatDetailsPanel()
{
    $('.boatDetailsInfoPanel').hide().removeClass('visible');
}


/*****ONLOAD SCRIPS*******/

jQuery(document).ready(function(){

    $("#closeBtn2").click(function(e){
        closeBoatPanel()
        e.stopPropagation();
    })

    /*
     *open boat list panel (boat models menu)
     **/
    $(".boatModels").mouseover(function(ev){
        hideBoatInfoPanel();
        $("#experienceMenu").fadeOut();
        $("#companyMenu").fadeOut();
        $("#whyHydraMenu").fadeOut();
        
        var im = new Image();
        im.src = siteUrl + "images/front/experienceMenu.png";

        $("#boatPanel").fadeIn();
        ev.stopPropagation();
    })

    $(".experience").click(function(ev){
        hideBoatInfoPanel();
        $("#boatPanel").fadeOut();
        $("#companyMenu").fadeOut();
        $("#boatDetails").fadeOut().removeClass('visible');

        var im = new Image();
        im.src = siteUrl + "images/front/experienceMenu.png";

        $("#experienceMenu").fadeIn();
        ev.stopPropagation();
    })

     $(".whyHydra").mouseover(function(ev){
        hideBoatInfoPanel();
        $("#boatPanel").fadeOut();
        $("#companyMenu").fadeOut();
        $("#boatDetails").fadeOut().removeClass('visible');

        var im = new Image();
        im.src = siteUrl + "images/front/experienceMenu.png";

        $("#whyHydraMenu").fadeIn();
        ev.stopPropagation();
    })

    $(".company").mouseover(function(ev){
        hideBoatInfoPanel();
        $("#boatPanel").fadeOut();
        $("#experienceMenu").fadeOut();
        $("#whyHydraMenu").fadeOut();
        $("#boatDetails").fadeOut().removeClass('visible');

        var im = new Image();
        im.src = siteUrl + "images/front/experienceMenu.png";

        $("#companyMenu").fadeIn();
        ev.stopPropagation();
    })


    $("#boatPanel").click(function(ev){
        $("#boatDetails").fadeOut().removeClass('visible');
        ev.stopPropagation();
    })

    $("body").click(function(){
        $("#boatPanel").fadeOut();
        $("#boatDetails").fadeOut().removeClass('visible');
        $("#featureBoxEnlarged").fadeOut();
        $("#experienceMenu").fadeOut();
        $("#whyHydraMenu").fadeOut();
        $("#companyMenu").fadeOut();
        $("#tooltip").fadeOut();
        $(".featureBoxEnlarged").fadeOut();
//        $("#detailPopup").fadeOut();

        showBoatInfoPanel();
    })

    //show boats details
    $("#boatPanel .boat").hover(
        function(){
            var boatId = $(this).attr('id').replace("boat_","");
            showBoatDetails(boatId);
            markSelectedBoat(boatId);
        },
        function(){
            var boatId = $(this).attr('id').replace("boat_","");
            unmarkSelectedBoat(boatId);
        }
    )

    //go to boat page
    $("#boatPanel .boat").click(function(){
        var boatId = $(this).attr('id').replace("boat_","");
        location.href = siteUrl + "boat-models/features-and-details/boat/"+boatId+"/"+$(this).attr('boatName').replace(' ','');
    })

    //set hero  homepage
    $('#boatsCarousel span').click(function(){
        clearTimeout(animationTimer)
        
        var selectedHero = $('#boatsCarousel .isActive').attr("id");
        $("#"+selectedHero).removeClass(selectedHero + "Active").removeClass("isActive").addClass(selectedHero);

        var boatId = $(this).attr('id');
        var background = siteUrl + "images/front/backgrounds/"+boatId+".jpg";
        
        $(this).addClass(boatId+"Active isActive")

        var im = new Image();
        im.src = background;

        $('body').css("background-image", "url("+background+")")

        var x = boatId.replace("boat",'');
        activeBackground = x - 1;        
    })

    //show tooltip for each section
    $(".heroes span").hover(
        function(){
            var sectionId = $(this).attr('id').replace("boat","");
            $("#tooltip div").hide();
            $("#tooltip #tooltip_"+sectionId).show();

            var pos = $(this).position();
            $("#tooltip").css({left:pos.left + 75,top:pos.top + 10}).fadeIn();
        },
        function(){
            $("#tooltip").hide();
        }
    )


    //add boat to compare list
    $("#detailPopup .clsBtn").click(function(){
        closeDetailsPopup();
    })

    $(".boatCompare  .boat").click(function(){
        var boatId = $(this).attr('id');
        openBoatDetailPopup(boatId)        
    })

    $(".customScrollbars").click(function(ev){ 
        ev.stopPropagation();
    })

    /**
     * boat details page - FEATURE / DETAILS tab
     * show expanded box
     **/
    var f = 0; //

    $(".featureList .featureBox").hover(function(e){
        if(f==1) {
            //prevent opening a new feature box
            return false;
        }



        f=1;
        $('.featureBoxEnlarged').hide();
        var featureId = $(this).attr('id').replace('feature_','');
        var idx = $(this).parent().attr('jcarouselindex');
        var pos = $(this).offset();

        var ulLeftScrolled = $("#boatFeatures").css('left');

//        var posLeft = (idx - 1) * 286 + 68 + parseInt(ulLeftScrolled);
        var posLeft = (idx - 1) * 284 + 170 + parseInt(ulLeftScrolled);
//        console.log(posLeft)
        $("#featureBoxEnlarged_" + featureId).css({left:posLeft,top:-170});
        $("#featureBoxEnlarged_" + featureId).fadeIn(function(){f=0});
    },
    function(){}
    )

    $(".featureBoxEnlarged").hover(
        function(e){
            e.stopPropagation()
        }
        ,
        function(e){
        if ($(this).is(':visible'))
            {
                var enlID = $(this).attr('id');
                if ($('#'+enlID).is(':visible'))
                {
                    $('#'+enlID).hide();
                }
            }
            e.stopPropagation();
    });

    /**
     * prevent closing expanded box if user click on its content
     **/
    $("#featureBoxEnlarged").click(function(ev){
        ev.stopPropagation();
    });

    

    /*
     * KNOWLEDGE CENTER SCRIPTS
     * show the boats for selected category
     **/
    $(".subcategoriesSubtitle .category a").mouseover(function(){

        $("#kcSelected").remove();
        $(".knowledgeCenter .compared").removeClass('compared');

        var categId = $(this).attr('id');

        if($(this).hasClass(categId+"Selected")) {
            return false;
        }

        $("#vector").removeClass('vectorSelected');
        $("#hydraSports").removeClass('hydraSportsSelected');
        $("#bayBoat").removeClass('bayBoatSelected');

        $(this).addClass(categId+"Selected")

        var cId = "";
        switch(categId) {
            case "vector":
                cId = "categ_2";
            break;
            case "hydraSports":
                cId = "categ_3";
            break;
            case "bayBoat":
                cId = "categ_1";
            break;
        }

        $(".boatsList .serie").hide();
        $("#"+cId).fadeIn(1000);
        
    });

    $(".subcategoriesSubtitle .category a").mouseout(function(){
        $("#vector").removeClass('vectorSelected');
        $("#hydraSports").removeClass('hydraSportsSelected');
        $("#bayBoat").removeClass('bayBoatSelected');
    });


    $(".knowledgeCenter .boat").click(function(){

        $("#kcSelected").remove();
        $(".knowledgeCenter .compared").removeClass('compared');

        var id = $(this).attr('id');
        $("#"+id).addClass("compared")
        $("#"+id+" .img").html('<img id="kcSelected" src="'+siteUrl + 'images/front/selected.png'+'" />');

        id = id.replace('boatKC_','');
        location.href = siteUrl + "boat-models/features-and-details/boat/"+id+'/'+$(this).attr('boatName').replace(' ','');
    })


    /*article list - shows the articles by categ*/
    $(".knowledgeArticles .categs a").click(function(){
        var c = $(this).attr('id').split("_");
        categId = c[1];
        $(".knowledgeArticles .active").removeClass("active");

        $(".articlesContent .article").hide();
        $("#c_"+categId).parent().addClass("active");
        $("#categId_"+categId).fadeIn();
        location.hash = categId
    })


    $(".content").css("zIndex",1);
    $(".panel").css("zIndex",20);

})

