$(document).ready( function() {
    $("#liikuntapaikatform select").change( function() {
        window.location.href=this.form.elements[0].options[this.form.elements[0].selectedIndex].value;
    });

    $("#kulttuuripaikatform select").change( function() {
        window.location.href=this.form.elements[0].options[this.form.elements[0].selectedIndex].value;
    });

    $('#sidebar-query').submit( function(e) {
        if ($('#sidebar-query .query').val() == '') {
            e.preventDefault();
            alert('Hakusana ei voi olla tyhjä');
            return false;
        }
    });
});

var keyStr = "ABCDEFGHIJKLMNOP" +
             "QRSTUVWXYZabcdef" +
             "ghijklmnopqrstuv" +
             "wxyz0123456789+/" +
             "=";

function encode64(input) {
    var output = "";
    var chr1, chr2, chr3 = "";
    var enc1, enc2, enc3, enc4 = "";
    var i = 0;

    do {
        chr1 = input.charCodeAt(i++);
        chr2 = input.charCodeAt(i++);
        chr3 = input.charCodeAt(i++);

        enc1 = chr1 >> 2;
        enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
        enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
        enc4 = chr3 & 63;

        if (isNaN(chr2)) {
            enc3 = enc4 = 64;
        } else if (isNaN(chr3)) {
            enc4 = 64;
        }

        output = output + 
            keyStr.charAt(enc1) + 
            keyStr.charAt(enc2) + 
            keyStr.charAt(enc3) + 
            keyStr.charAt(enc4);
        chr1 = chr2 = chr3 = "";
        enc1 = enc2 = enc3 = enc4 = "";
    } while (i < input.length);

    return output;
}

function buildquery(form) {

    var string = 'paikka=';
    var count  = 0;

    for (i=0; i<form.paikka.length; i++) {
        if (form.paikka[i].checked) {
            string = string + form.paikka[i].value +',';
            count++;
        }
    }

    if (count == 0) {
        alert('Valitse ainakin yksi paikkakunta');
        return false;
    }

    var string = string+'&laji=';
    var count  = 0;

    for (i=0; i<form.laji.length; i++) {
        if (form.laji[i].checked) {
            string = string + form.laji[i].value +',';
            count++;
        }
    }

    if (count == 0) {
        alert('Valitse ainakin yksi liikuntalaji');
        return false;
    }

    var base64 = encode64(string);
    base = base64.replace(/\+/g, "XXX");

    window.location.href='/?s=lajipaikka;'+ base;
    return false;
}

function buildqueryselect(form) {
    if (form.paikka.value == '') {

        alert('Valitse paikkakunta');
        return false;

    } else {

        var string = 'paikka='+ form.paikka.value +'&laji=';
        var count  = 0;

        for (i=0; i<form.laji.length; i++) {
            if (form.laji[i].checked) {
                string = string + form.laji[i].value +',';
                count++;
            }
        }

        if (count == 0) {
            alert('Valitse ainakin yksi liikuntalaji');
            return false;
        }

        var base64 = encode64(string);
        base = base64.replace(/\+/g, "XXX");

        window.location.href='/?s=lajipaikka;'+ base;
        return false;
    }
}

function checkUncheckAll(e, not) {
    var f = e.form, z = 0;
    for(z=0; z<f.length;z++) {
        if(f[z].type == 'checkbox' && f[z].name != 'checkall' && f[z].name != 'culture' && f[z].name != not) {
            f[z].checked = e.checked;
        }
    }
}
