$(document).ready(function() {
    
    $('#languages :checkbox').change(function(event) {
        var qs = '';
        var first = true;
        var langs = document.getElementsByName('language');
        for (var i = 0; i < langs.length; i++) {
            if (langs[i].checked) {
                if (first) {
                    qs = qs + 'lang=';
                    qs = qs + langs[i].value;
                    first = false;
                } else {
                    qs = qs + ',' + langs[i].value;
                }
            }
        }
        if (qs == '') qs = 'lang=';
        
        $.post("search/languages", qs, function(data) {
            search(true);
            refreshWatchlist();
        });
    });
    
    $('#categories :checkbox').change(function(event) {
        var qs = '';
        var first = true;
        var cats = document.getElementsByName('category');
        for (var i = 0; i < cats.length; i++) {
            if (cats[i].checked) {
                if (first) {
                    qs = qs + 'cat=';
                    qs = qs + cats[i].value;
                    first = false;
                } else {
                    qs = qs + ',' + cats[i].value;
                }
            }
        }
        if (qs == '') qs = 'cat=';
        postSearchExtended(qs)
    });
    
    $('#effects :checkbox').change(function(event) {
        var qs = '';
        var first = true;
        var effects = document.getElementsByName('effect');
        for (var i = 0; i < effects.length; i++) {
            if (effects[i].checked) {
                if (first) {
                    qs = qs + 'effect=';
                    qs = qs + effects[i].value;
                    first = false;
                } else {
                    qs = qs + ',' + effects[i].value;
                }
            }
        }
        if (qs == '') qs = 'effect=';
        postSearchExtended(qs)
    });
    
    $('#search-fields :checkbox').change(function(event) {
        var qs = '';
        var first = true;
        var fields = document.getElementsByName('search_field');
        for (var i = 0; i < fields.length; i++) {
            if (fields[i].checked) {
                if (first) {
                    qs = qs + 'searchfield=';
                    qs = qs + fields[i].value;
                    first = false;
                } else {
                    qs = qs + ',' + fields[i].value;
                }
            }
        }
        if (qs == '') qs = 'searchfield=';
        postSearchExtended(qs)
    });

    $('a.thera_image').fancybox({
            'hideOnContentClick': true,
            'titlePosition': 'inside'
    });
    
    $('a.thera_image_group').fancybox({
            'hideOnContentClick': true,
            'titlePosition': 'inside',
            'cyclic': true
    });
    
    $('#search-extended').click(function(event) {
        if(event.target.nodeName == 'LABEL') return;
        if (event.target.name != 'category' && event.target.name != 'effect' && event.target.name != 'search_field')
            $('#search-extended').toggle('fast');
    });
    
    $('#container').click(function(event) {
        if (event.target.id == 'header'
            || event.target.id == 'container'
            || event.target.id == 'content'
            || event.target.id == 'left'
            || event.target.id == 'search'
            || event.target.id == 'search-extended'
            || event.target.id == 'languages'
            || event.target.id == 'tabs'
            || (event.target.id == '' && event.target.nodeName != 'LABEL')) {
            if($('#search-extended').css('display') != 'none')
                $('#search-extended').hide('fast');
        }
    });
    
    $('#languages>h2, #toggle-lang-down, #toggle-lang-right').click(function(event) {
        $('#lang-selector').slideToggle('fast');
        $('#toggle-lang-down').toggle();
        $('#toggle-lang-right').toggle();
    });
    
    $('#therapeutika-content>h3').click(function(event) {
        var n = $(event.currentTarget).next('.effect-description');
        n.slideToggle('fast');
    });
    
    $('#loginShow').click(function(event) {
        event.preventDefault();
        $('#loginForm').toggle();
    });
    
    $('#logout').click(function(event) {
        event.preventDefault();
        $.get("logout", function(data) {
            window.location.reload();
        });
    });
    
    $('#acceptButton').click(function(e) {
        window.location.href = './disclaimer/accept';
    });
    
    var mailToUrl = 'mailto:';
    mailToUrl += 'peter_vonblarer';
    mailToUrl += '@';
    mailToUrl += 'heilpraktikerschule.ch';
    $('.email').attr('href', mailToUrl);
    
    $('#tabs').tabs();
    
    window.scrollTo(0, 0);
    
    positioning();
    
    $(window).resize(function() {
        positioning();
    });
});

function search(showTab) {
    $('#search-results').html('<img src="assets/img/ajax-loader.gif" />');
    var q = $('#query').val();
    var url = window.location.href;
    $.post("search", {query: q, currentUrl: url}, function(data) {
        $('#search-results').html(data);
        $.get("search/searchform", function(data) {
            $('#search').html(data); 
         });
    });
    if (showTab) $('#tabs').tabs( "select", 0);
}

function postSearchExtended(qs) {
    $.post("search/searchextended", qs, function(data) {
        search(true);
    });    
}

function positioning() {
    var cw = $('#content').width();
    var must = $(window).width() - 390;
    if (cw < must) $('#content').width(must);
    
    $('#disclaimer').css('top', '50px');
    $('#disclaimer').css('left', ($(window).width() - 800) / 2);
}

function addToWatchlist(obj, id) {
    var t = $(obj).children().first();
    t.attr('src', 'assets/img/watchlist-on.png');
    $('#watchlist').html('<img src="assets/img/ajax-loader.gif" />');
    //$('#tabs').tabs( "select", 1);
    $.post('watchlist/add', {therapeutikaId: id}, function(data) {
        refreshWatchlist();
    });
    return false;
}

function addAllToWatchlist() {
    $('#watchlist').html('<img src="assets/img/ajax-loader.gif" />');
    $('#tabs').tabs( "select", 1);
    $.get('search/addAllToWatchList', function(data) {
        refreshWatchlist();
    });
    return false;
}

function refreshWatchlist() {
    $.get('watchlist', function(data) {
        $('#watchlist').html(data);
    });
}

function removeFromWatchlist(id) {
    $('#watchlist').html('<img src="assets/img/ajax-loader.gif" />');
    $.post('watchlist/remove', {therapeutikaId: id}, function(data) {
        $.get('watchlist', function(data) {
            $('#watchlist').html(data);
        });
        search(false);
    });
    return false;
}

function removeAllFromWatchlist() {
    $('#watchlist').html('<img src="assets/img/ajax-loader.gif" />');
    $.get('watchlist/removeAll', function(data) {
        $('#watchlist').html(data);
        search(false);
    });
    return false;
}

var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-6012703-5']);
_gaq.push(['_trackPageview']);

(function() {
  var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
  ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
  var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();


