/// <reference path="jquery-1.4.2-vsdoc.js" />

// this function will modify the searchButton href attribute on searchButton mouseover
function searchQuery(link) {    
    var q = $('#searchInput').val();
    // q = q.split(" ").join(",").replace(",,", " ").replace(",", " ");
    q = encodeURI(q);
    q = (q == null || q == "") ? "#" : (link + "?query=" + q);
    $('#searchButton').attr("href", q);
    return true;
}

function stopReturnKey(evt) {
    var evt = (evt) ? evt : ((event) ? event : null);
    var node = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null);

    if ((evt.keyCode == 13) && (node.type == "text")) {
        if (node.id == "searchInput") {
            searchQuery($('#searchButton').attr("title"));
            $("#searchButton").click();
        }
        return false;
    }
}
document.onkeypress = stopReturnKey;




/** Function for all the play-mix-links and a-hrefs using class=" mixlink " **/
function returnMixUrl(mixid, langcode, prefix) {
    if (playerwindow && !playerwindow.closed)
        playerwindow.location.href = "/templates/pages/DeAttachedPlayer.aspx?mode=1&mixid=" + mixid + "&lang=" + langcode + "&prefix=" + prefix;
    else
        playerwindow = window.open(("/templates/pages/DeAttachedPlayer.aspx?mode=1&mixid=" + mixid + "&lang=" + langcode + "&prefix=" + prefix + status), "Player", "width=520,height=625"); // 520x610
        playerwindow.focus();
}

function theRotator() {
    setInterval('autoFlip()', 4500);
}

function autoFlip() {
    //Get the first image
    var current = ($('#campaignContainer li.show') ? $('#campaignContainer li.show') : $('#campaignContainer li:first'));
    //Get next image, when it reaches the end, rotate it back to the first image
    var next = ((current.next().length) ? ((current.next().hasClass('show')) ? $('#campaignContainer li:first') : current.next()) : $('#campaignContainer li:first'));

    flip(next);
}

function flip(active) {
    $(".campaign").fadeTo("medium", 0.0);
    $("#campaignContainer li").removeClass('show');
    $(active).addClass('show');
    $(".show .campaign").fadeTo("medium", 1);
}


$(document).ready(function () {

   


    $("#campaignContainer li .campaignPaging").live('click', function (event) {
        $(document).stopTime();
        flip($(this).parent());
        return false;
        //theRotator();
    });

    $(document).everyTime(5000, "flipper", function () {
        autoFlip();
    }, 0);



    // BEGIN AVP
    var options = {
        contentSelector: "#content",
        coverSelector: "#avpFullScreenCover",
        targetSelector: "#avpWrapper",
        htmlLocation: "/"+$('#LanguageBranch').val()+"/avp/",
        mobileLocation: "/"+$('#LanguageBranch').val() + "/avp/",
        serviceLocation: "http://avp.absolut.com/Service/",
        selectCountryText: $('#AVPSelectCountry').val(),
        forceRemember: false,
        forceShortYear: false,
        onAvpDisplay: function () {           
            googleTracking('/virtual/'+$('#LanguageBranch').val()+'/lda/');
        },
        onAvpPassed: function () {  },
        onDateError: function () { alert($('#AVPErrorDate').val()); googleClickTrack('AVP', 'Submitted', 'User entered invalid date', ''); },
        onDrinkingBanned: function () { alert($('#AVPErrorBanned').val()); googleClickTrack('AVP', 'Submitted', 'Site banned for selected country', ''); },
        onTooYoung: function () { alert($('#AVPErrorAge').val()); googleClickTrack('AVP', 'Submitted', 'User too young', ''); },
        redirectList: [{}]


    };
    if ($('#IsStartPage').val() == "True") {
        options.redirectList = [{ cc: "FR-CA", url: "http://www.malibu-rum.com/fr-ca" }, { cc: "CA", url: "http://www.malibu-rum.com/ca" }, { cc: "NL", url: "http://www.malibu-rum.com/nl" }, { cc: "US", url: "http://www.malibu-rum.com/us/"}];
    }

    _avp.init(options);

    // END AVP


    $('#spacer').height($('#filter').height());
    $(".scroll-pane2").jScrollPane();
    initFacebook();


});




// Called for every Ajax navigation (see ajaxPost above)
var pageTracker = null;
function googleTracking(post_url) {
    try {
        // Make sure you use the proper code for specifik tracking version!!! (JW)
        if (pageTracker==null) pageTracker = _gat._getTracker("UA-7131242-4");
        pageTracker._trackPageview(post_url);

    } catch (Error) { }
}

// May be called on object.onClick - all other events that isn't navigation!
function googleClickTrack(category, action, opt_label, opt_value) {
    try {
        // Make sure you use the proper code for specifik tracking version!!! (JW)
        if (pageTracker==null) pageTracker = _gat._getTracker("UA-7131242-4");
        pageTracker._trackEvent(category, action, opt_label, 1); // each call must define category & action

    } catch (Error) { }
}



/** Try to reload the object-tag containing the flashplayer for the mix-player **/
function reloadPlayer(mixid) {
    //alert("reloadPlayer: " + $('music'));
    var p = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="400" height="74"><param name="movie" value="http://www.letsmix.com/content/flash/player/rmbbplayer.1.1.1.swf" /><param name="flashvars" value="mixID=' + mixid + '&format=Site&autoStart=0&skin=DEFAULT" /><object type="application/x-shockwave-flash" data="http://www.letsmix.com/content/flash/player/rmbbplayer.1.1.1.swf" width="400" height="74"><param name="flashvars" value="mixID=' + mixid + '&format=Site&autoStart=0&skin=DEFAULT" /></object></object>';
    $('music').html("p");
}



/* Client-side access to querystring name=value pairs
Version 1.3
28 May 2008
	
License (Simplified BSD):
http://adamv.com/dev/javascript/qslicense.txt
*/
function Querystring(qs) { // optionally pass a querystring to parse
    this.params = {};
    var s = location.search;
    if (qs == null) qs = s.substring(1, s.length);
    if (qs.length == 0) return;

    // Turn <plus> back to <space>
    // See: http://www.w3.org/TR/REC-html40/interact/forms.html#h-17.13.4.1
    qs = qs.replace(/\+/g, ' ');
    var args = qs.split('&'); // parse out name/value pairs separated via &

    // split out each name=value pair
    for (var i = 0; i < args.length; i++) {
        var pair = args[i].split('=');
        var name = decodeURIComponent(pair[0]);

        var value = (pair.length == 2)
			? decodeURIComponent(pair[1])
			: name;

        this.params[name] = value;
    }
}

Querystring.prototype.get = function(key, default_) {
    var value = this.params[key];
    return (value != null) ? value : default_;
}

Querystring.prototype.contains = function(key) {
    var value = this.params[key];
    return (value != null);
}

Querystring.prototype.toString = function() {
    var result = "?";
    for (var param in this.params) {
        result += param + "=" + this.params[param] + "&";
    }
    return result.substring(0, result.length - 1);
}

Querystring.prototype.set = function(key, value) {
    this.params[key] = value;
}


function getFlashPlayer() {
    var w0 = window['Object0'];
    var w1 = window['Object1'];
    var d0 = document['Object0'];
    var d1 = document['Object1'];
    return (w0!=null)? w0: ((w1!=null)? w1: (d1!=null)? d1: d0);
    /***
    if (navigator.appName.indexOf("Microsoft") != -1) {
        if (window['Object0'] != null) return window['Object0'];
        return document['Object0'];
    }
    else {
        return (document['Object1'] != null) ? document['Object1'] : document['Object0'];
    }
    ***/
}

function playTrack(seconds) {
    var result = false;
    var fp = getFlashPlayer();
    try {
        result = fp.setCurrentTimePosition(seconds.toString());    // fuckar upp om seconds to less!?
    } catch (e) { result = false; } finally {
        try {
            setTimeout(startPlayer, 100);
        } catch (ee) { }
        return result; 
    }
}

function startPlayer() {
    try {
        var fp = getFlashPlayer();
        fp.sendToActionScript("play");
    } catch (e) { }
}

function stopPlayer() {
    try {
        var fp = getFlashPlayer();
        fp.sendToActionScript("pause");
    } catch (e) { }
}

function getPlayerStatus() {
    try {
        var fp = getFlashPlayer();
        return fp.getCurrentPlayerStatus();
    } catch (e) { return "pause"; }
}


function getTrack() {
    var fp = getFlashPlayer();
    try {
        fp.getCurrentTimePosition();
    } catch (e) {
        return 0;
    } 
    return fp.getCurrentTimePosition();
}

function setCookie(c_name, value, exdays) {
    var exdate = new Date();
    exdate.setDate(exdate.getDate() + exdays);
    var c_value = escape(value) + ((exdays == null) ? "" : "; expires=" + exdate.toUTCString());
    document.cookie = c_name + "=" + c_value;
}
