﻿$('document').ready(function() { 
    
    init_accordeon();
    init_scrollTo();
    init_targets();
    init_slideshow();
    init_tabs();
});
//einde pageready

function pageLoad() {
    init_tooltips();
    init_validation(); 
    init_bullets();
    check();

    fix_layout();
    
    //gallery op detailpagina
    init_thumbs();
    //cufon refresh();
    Cufon.refresh();    
}
// einde pageload

function init_targets() {
    $('.newwindow').click(function() {
        $(this).attr('target','_blank');
    });
}


function init_scrollTo() {
    $('.scrollto').click(function() {
        whereto = $(this).attr('rel');
        $.scrollTo($('#'+whereto), 800);
        return false;
    });
}

function init_slideshow() {
    $("#pikame").PikaChoose({
        auto_play:false,
        slide_speed: 3000,
        show_prev_next: false,
        user_thumbs: true,
        show_captions: false,
        slide_enabled: false,
        transition: [0],
        thumb_width: 84,
		thumb_height: 55
    });
}


function init_tabs() {
    $('.tabs-container').each(function() {
        var activetab = $(this).find('.tabs a.active').attr('rel');
        $(this).find('#'+activetab+'.tab-content').show();
        $(this).find('.tabs a').click(function() {
            $(this).blur();
            var activetab = $(this).attr('rel');
            $(this).parents('.tabs').find('a.active').removeClass('active');
            $(this).addClass('active');
            $(this).parents('.tabs-container').find('.tab-content').hide();
            $(this).parents('.tabs-container').find('#'+activetab+'.tab-content').show();
        });
    });
}

function init_validation() {
    /*** validatie ***/
    $('.validatie_pointer').each(function() {
            active = ($(this).css('display'));
            if (active == "inline") { $(this).parents('p.row').find('.textbox').addClass('error'); }
        });    
        $('input').blur(function() {
            $('.validatie-pointer:hidden').parents('p.row').find('.textbox').removeClass('error');
            $('.validatie-pointer:visible').parents('p.row').find('.textbox').addClass('error');
            $(this).removeClass('has-focus');
        });
        $('input').focus(function() {
            $('.validatie-pointer:hidden').parents('p.row').find('.textbox').removeClass('error');
            $('.validatie-pointer:visible').parents('p.row').find('.textbox').addClass('error');
            $(this).addClass('has-focus');
        });
        $('.do-validate').click(function() {
            $('.validatie-pointer:hidden').parents('p.row').find('.textbox').removeClass('error');
            $('.validatie-pointer:visible').parents('p.row').find('.textbox').addClass('error');
            setTimeout(check, 100);
        });
}

function check() {
    $('.validatie-pointer:hidden').parents('p.row').find('.textbox').removeClass('error');
    $('.validatie-pointer:visible').parents('p.row').find('.textbox').addClass('error');
    if ($('.textbox').hasClass('error')) { 
            $('.errorlist').show();             
            centreer(); //in een popup? centreer dan opnieuw na het laten zien van de errorlist
            }
}


function init_bullets() {
   //verwijder alle bullets eerst ivm herinitialisatie van bullets 
   $('.required-bullet').remove();

   //zet verplichte bullets aan
    $('[rel="required"]').each(function() {
        //breedte van de textbox
        width = $(this).css('width');
        //linkpadding van de .row
        padding = $(this).css('left');
        //de 'px' eraf halen
        width = width.replace("px", "");     
        padding = padding.replace("px", "");
        //positie van de 'required' bullet
        afstand = parseInt(width) + parseInt(padding) + 12;
        //de required bullet goed neerzetten
        $(this).after('<div class="required-bullet" style="left:' + afstand + 'px">&nbsp;</div>');
    });
}

function fix_layout() {
    //buttons 'mooi' maken
    $('.btn, .btn-pink, .btn-grey, .btn-big, .btn-grey-arrow, .btn-normal-disabled-arrow').each(function() {
        $(this).append('<div class="btn-right">&nbsp;</div>');
    }); 

    //thumbnails in de winkelwagen
    $('.cart-item .cartthumb img').each(function() {
        var image = $(this).attr('src');
        $(this).hide();
        $(this).parents('.cartthumb').css({'background':'transparent url('+image+') top center no-repeat'});
    });

    
    $('#sidemenu-onelevel li:last,#sidemenu li:last').addClass('last');
    $('#sidemenu-onelevel ul li ul li:last,#sidemenu ul li ul li:last').addClass('last');

    if ($('#sidemenu-onelevel li, #sidemenu li').size() == 1) {
        $('#sidemenu-onelevel ul, #sidemenu ul').find('li').addClass('single');
    }
    else {
        $('#sidemenu-onelevel ul, #sidemenu ul').each(function() {
            $(this).find('li:last').addClass('last');
        });
    }
    
    //indien op home; voeg dat regel toe voor IE6
    if ($('#overview-home').length != 0) {
        $('#doublecolumns-reversed-container .columns .column-right').addClass('IE6-homerightcolumn');
    }
    
}

function surfto(url) {
    window.location = url;
}

function init_thumbs() {
    $('.thumb').click(function() {
        $(this).blur();
        if ($(this).hasClass('active')) {return false}
        $(this).parents('.thumbs').find('.active').removeClass('active');
        $(this).addClass('active');
        $('#flashcontent-detail-container').remove();
        var mainLocation = $(this).attr('href');
                    
        //is het een swf?
        if ($(this).attr('rel') == "swf") 
         {
            //alt content
            altContent = $(this).attr('alt');
            $('.main-image').hide();
            $('.main-image').after('<div id="flashcontent-detail-container"><div id="flashcontent-detail-content"></div></div>');
            //alt content laten zien
            $('#flashcontent-detail-content').append('<img src="'+altContent+'" alt=""/>');
            //flash laten zien
            var flashvars = {};
            var params = {wmode: 'transparent'};
            var attributes = {};
            swfobject.embedSWF(mainLocation, "flashcontent-detail-content", "350", "350", "9.0.0","", flashvars, params, attributes);
         }
        else 
        {
            $('#flashcontent-detail-container').remove();
            $('.main-image').show();
            $('.main-image').attr('src',mainLocation);
        }
        return false;  
    });
}



function init_tooltips() {
       $('[tooltip]').each(function() {
       $('[tooltip]').click(function() {
           var tt = $(this).attr('tooltip');
           var content = $(this).attr('tooltipcontent');
           var pos = $(this).offset();
           var toleft = ($(this).width() /2);
           $('#'+tt).css('left', (pos.left + toleft) +'px');
           $('#'+tt).css('top', pos.top+'px');
           $('#'+tt).show();
           $('#'+tt).find('.tooltip').html(' ');
           $('#'+tt).find('.tooltip').append(content);
           formattooltip('#'+ tt);
           setTimeout('closeonbody()',100);
       });
    });
}    


function formattooltip(el) {
    $(el).append('<div class="tooltip-point">&nbsp;</div>');
    $(el).append('<div class="tooltip-close">&nbsp;</div>');
    var width = $(el).find('.tooltip').width();
    var height = $(el).find('.tooltip').height();
    
    
    //positie boven link
    $(el).css('margin-top','-'+ (height + 20) +'px');
    widthpos = (parseInt(width) / 2);
    $(el).css('margin-left', '-' + widthpos+'px');
           
    //positie van pijltje
    var left = (width / 2) - 8;
    $(el).find('.tooltip-point').css('margin-left', left +'px');
    $(el).find('.tooltip-point').css('top', height +'px');
    $(el).find('.tooltip-close').css('left', width +'px');  
        
    $('.tooltip-close').bind('click',function(el) {
        hidetooltips(el.target);
     });
}

function closeonbody() {
        $('body').bind('click', function(el) {
            if ($(el.target).closest('.tooltip-container').length == 0) {
            //alert('verwijder');
            hidetooltips('0');
        }
    });
}

function stopcloseonbody() {
    $('body').unbind('click');
}

function hidetooltips(el) {
    if (el == '0') {
        $('.tooltip-container').hide();
    } else {
        $(el).parents('.tooltip-container').hide();
    }
    stopcloseonbody();
}


/********* popups ******/
function startOverlay_div(element) {
        //start lightbox
        $('form:first').before("<div id=\"overlay\">&nbsp;</div>");
        $('#overlay').css('opacity', '0.3');
        $('#overlay').fadeIn(500, overlay_ingeladen(element));
}

function overlay_ingeladen(element) {
       $('#overlay').click(close_overlay);
       $('#'+element+' .close').click(function() {close_overlay();});
       $('#'+ element).center();
       $('#'+ element).css({'z-index':'9500'})
       $('#'+ element).show();
       init_bullets();
}

function close_overlay() {  
    $('.popup').hide(); 
    overlay_gesloten(); 
}

function overlay_gesloten() {
        $('#overlay').fadeOut(500);
        setTimeout("$('#overlay').remove()", 500);
}

$(window).resize(function() {
        centreer();
});

jQuery.fn.center = function() {
        this.css("position", "absolute");
        this.css("top", ($(window).height() - this.height()) / 2 + $(window).scrollTop() + "px");
        this.css("left", ($(window).width() - this.width()) / 2 + $(window).scrollLeft() + "px");
        return this;
}

function centreer() {
        $('.popup').center();
}
/******** einde popups *****/



/* accordeon */
function init_accordeon() {
    $('.q a').click(function() {
        $(this).parents('.q').next('.a').slideToggle();
        $(this).toggleClass('active');
        $(this).blur();
    });
}

function openpopup(url) {
    window.open(url,null,"height=505,width=715,status=yes,toolbar=no,menubar=no,location=no");
    close_overlay();
}
