$(document).ready(function () {

    //ronde hoekjes op paragrafen op contact en over-ons pagina's
    $('.pageclass_pfeifer-service #contentwrapper p,.pageclass_pfeifer-service #contentwrapper #p,.pageclass_pfeifer-service #contentwrapper #p2,.pageclass_pfeifer-service #contentwrapper ol,.pageclass_pfeifer-service #contentwrapper ul').corner();
    $('.pageclass_about-us #contentwrapper p,.pageclass_about-us #contentwrapper #p,.pageclass_about-us #contentwrapper #p2,.pageclass_about-us #contentwrapper ol,.pageclass_about-us #contentwrapper ul').corner();
    $('.pageclass_over-ons #contentwrapper p,.pageclass_over-ons #contentwrapper #p,.pageclass_over-ons #contentwrapper #p2,.pageclass_over-ons #contentwrapper ol,.pageclass_over-ons #contentwrapper ul').corner();
    $('.pageclass_uber-uns #contentwrapper p,.pageclass_uber-uns #contentwrapper #p,.pageclass_uber-uns #contentwrapper #p2,.pageclass_uber-uns #contentwrapper ol,.pageclass_uber-uns #contentwrapper ul').corner();
    $('.pageclass_informacje-o-firmie #contentwrapper p,.pageclass_informacje-o-firmie #contentwrapper #p,.pageclass_informacje-o-firmie #contentwrapper #p2,.pageclass_informacje-o-firmie #contentwrapper ol,.pageclass_informacje-o-firmie #contentwrapper ul').corner();
    $('.pageclass_contact #contentwrapper p,.pageclass_contact #contentwrapper #p,.pageclass_contact #contentwrapper #p2,.pageclass_contact #contentwrapper ol,.pageclass_contact #contentwrapper ul').corner();
    $('.pageclass_kontakt #contentwrapper p,.pageclass_kontakt #contentwrapper #p,.pageclass_kontakt #contentwrapper #p2,.pageclass_kontakt #contentwrapper ol,.pageclass_kontakt #contentwrapper ul').corner();

    //Titels boven sommige pagina's
    $('.pageclass_kontakt #titlebarbig,.pageclass_informacje-o-firmie #titlebarbig,.pageclass_contact #titlebarbig,.pageclass_uber-uns #titlebarbig,.pageclass_over-ons #titlebarbig,.pageclass_pfeifer-service #titlebarbig,').css('display', 'block');

    //submenu toggle uitklappen
  /*  $('.navContent .aOpen').bind('click', function () {
        $(this).next().slideToggle();
        return false;
    });*/

    //topmenu toggle uitklappen
    //$('#leftwrapper .navContent').not('.topNavOpen').hide(); //standaard dicht behalve...

    /* $('.navOpener').css({ 'cursor': 'pointer' }).bind('click', function () {
    var togg = $(this).attr('id').replace('but', '.content');
    //$('.navContent').not(togg).slideUp();
    $(togg).slideToggle();
    return false;
    });*/


    //call us
    $('a.call').hover(function () {
        $('a.mailons, a.skype').hide();
        $('#phonenumber').stop(false, true).fadeIn();
    }, function () {
        $('#phonenumber').stop(true, true).fadeOut(function () { $('a.mailons, a.skype').fadeIn(); });
    });

    var newH = $('#detailsTable').height();

    //PDF download styles
    var pdf = (getQueryVariable('pdf'));
    if (pdf == '1') {
        $('#dvAdditionalInformation').css({ 'height': newH });
        $('#dvAdditionalInformation #moredetails').hide();
    } else if (newH >= 175) {
        $('#dvAdditionalInformation #moredetails').show();
        $('#dvAdditionalInformation').css({ 'overflow-y': 'hidden', 'height': 175 });
        $('#detailsTable').css('width', '100%');
    } else {
        //$('#dvAdditionalInformation').css({ 'overflow-y': 'hidden', 'height': 175 });
        $('#detailsTable').css('width', '100%');
    }


    //verberg youtubeslider bij transportkosten berekening
    $('.transportkosten').click(function () {
        $('#youtubeSlider').hide();
    });
    $('.transportBerekenClose').click(function () {
        $('#youtubeSlider').show();
    });

    //select language
    $('#currentLanguage').bind('click', function () {
        $('#languageSelect').toggle();
        var columns = 4;
        if (($('#languageSelect ul li').size() <= 9)) {
            columns = 3;
        }
        $('#languageSelect ul').not('.columned').multilists({ cols: columns }).addClass('columned');
        return false;
    });
    //    $('*').not('#languageSelect').not('#currentLanguage').bind('click', function () {
    //        $('#languageSelect').hide();
    //    });

    //stipjes om links verwijderen na klik
    $("a").bind("focus", function () { if (this.blur) this.blur(); });

    //Beschrijving op detailpagina
    if (newH >= 175) {
        $('#dvAdditionalInformation #moredetails').bind('click', function () {

            $('#dvAdditionalInformation #moredetails').hide();
            $('#dvAdditionalInformation').animate({ 'height': newH + 40 });
            $('#dvAdditionalInformation #lessdetails').show().animate({ 'opacity': 0.5 });
            return false;
        });
        $('#dvAdditionalInformation #lessdetails').bind('click', function () {
            $('#dvAdditionalInformation #lessdetails').hide();
            $('#dvAdditionalInformation').animate({ 'height': 175 }, function () {
                $('#dvAdditionalInformation').css('overflow-y', 'hidden');
                $('#dvAdditionalInformation #moredetails').show();
            });

            return false;
        });
        $('#dvAdditionalInformation #lessdetails').hover(function () { $(this).animate({ 'opacity': 1 }) }, function () { $(this).animate({ 'opacity': 0.5 }) });
    }
    //Einde Beschrijving op detailpagina


});

//=======================================================================
$(window).load(function () { //als alle afbeeldingen geladen zijn

    goslider('#ImageListWrap', '#ImageList', '.LinkListImage img', '#ImageListTop', '#ImageListBottom', 'v'); //1.Div om div met images heen 2.Div met images 3.De images 4.Links of Top button 5.Rechts of Bottom button 6. Horizontaal of verticaal	 

    //merkenslider
    var merkPos = 0;
    var merkTotal = $('#merkenSlider #merkenWrap #merken a').size();
    var vW = $('#merkenSlider #merkenWrap').width();
    var vH = $('#merkenSlider #merkenWrap').height();
    var q = $.parseQuery(); //parses the window location querystring by default
    var vMerk = ((q.b));
    if (vMerk) {
        vMerk = vMerk.toLowerCase();
        var defMerk = $('#merken a').index($('#' + vMerk)) + 1;
        if (defMerk == 0) { defMerk = 1 }
    } else {
        var defMerk = 1;
    }


    $('#merkenSlider #merkenWrap #merken a').css('left', vW);
    //alert(merkTotal);
    $('#merkenSlider #slideLeft').bind('click', function () { clearTimeout(merktimer); slideLeft(); return false; });
    $('#merkenSlider #slideRight').bind('click', function () { clearTimeout(merktimer); slideRight(); return false; });
    halfImg = ($('#merkenSlider #merkenWrap #merken a:nth-child(' + defMerk + ')').find('img').height() / 2);
    $('#merkenSlider #merkenWrap #merken a:nth-child(' + defMerk + ')').css({ 'left': 0 });
    $('#merkenSlider #merkenWrap #merken a').css({ 'top': ((vH / 2) - halfImg - 20) });
    $('#slideLeft, #slideRight').css('opacity', 0.5).hover(function () { $(this).animate({ 'opacity': 1 }); }, function () { $(this).animate({ 'opacity': 0.5 }); });
    var active = defMerk;
    function slideLeft() {
        $('#merkenSlider #merkenWrap #merken a:nth-child(' + active + ')').animate({ 'left': -(vW + 20) }).css('left', vW);
        active++;
        if (active > merkTotal) { active = 1 }
        halfImg = ($('#merkenSlider #merkenWrap #merken a:nth-child(' + active + ')').find('img').height() / 2);
        $('#merkenSlider #merkenWrap #merken a:nth-child(' + active + ')').css({ 'left': vW, 'top': ((vH / 2) - halfImg - 20) }).animate({ 'left': 0 });
    }
    function slideRight() {
        $('#merkenSlider #merkenWrap #merken a:nth-child(' + active + ')').animate({ 'left': +(vW + 20) }).css('left', vW);
        active--;
        if (active == 0) { active = merkTotal }
        halfImg = ($('#merkenSlider #merkenWrap #merken a:nth-child(' + active + ')').find('img').height() / 2);
        $('#merkenSlider #merkenWrap #merken a:nth-child(' + active + ')').css({ 'left': -vW, 'top': ((vH / 2) - halfImg - 20) }).animate({ 'left': 0 });
    }

    var merktimer;
    $(function () {
        merktimer = setInterval(function () { merkrotate() }, 6000);
    });

    function merkrotate() {
        slideLeft();
    }

    //einde merkenslider	

    //youtubeslider
    var ytW = 0;
    var vN = $('#youtubeSlider #slideWrap #slide').find('.youtubeWrap').length;
    var tmp = $('#youtubeSlider #slideWrap #slide .youtubeWrap:last-child').position();

    var vFirst = 0;
    if (vN > 0) {
        var vLast = tmp.left;
    }

    var vCurr = 1;
    youtubeArrows();
    if (vN == 0) {
        $('#youtubeSlider').parent().parent().hide();
    }
    $('#ytRight').bind('click', function () {
        vCurr++;
        if (vCurr > vN) { vCurr = 1 }
        var tmp = $('#youtubeSlider #slideWrap #slide .youtubeWrap:nth-child(' + vCurr + ')').position();
        var vml = $('#youtubeSlider #slideWrap #slide').css('margin-left');
        if (vml == 'auto') { vml = 0; }
        var mLeft = parseInt(vml) - tmp.left + 15;
        $('#youtubeSlider #slideWrap #slide').animate({ 'margin-left': mLeft }, function () {
            youtubeArrows();
        });
        return false;
    });
    $('#ytLeft').bind('click', function () {
        vCurr--;
        if (vCurr == 0) { vCurr = vN }
        var tmp = $('#youtubeSlider #slideWrap #slide .youtubeWrap:nth-child(' + vCurr + ')').position();
        var mLeft = parseInt($('#youtubeSlider #slideWrap #slide').css('margin-left')) - tmp.left + 15;
        $('#youtubeSlider #slideWrap #slide').animate({ 'margin-left': mLeft }, function () {
            youtubeArrows();
        });
        return false;
    });
    function youtubeArrows() {
        var vml = $('#youtubeSlider #slideWrap #slide').css('margin-left');
        if (vml == 'auto') { vml = 0; }
        if (parseInt(vml) >= 0) { $('#ytLeft').hide() } else { $('#ytLeft').show() }
        if (parseInt($('#youtubeSlider #slideWrap #slide').css('margin-left')) <= (vLast * -1 + 15)) { $('#ytRight').hide() } else { $('#ytRight').show() }
        //$('#prijsdetail').html(parseInt($('#youtubeSlider #slideWrap #slide').css('margin-left')) + '|' + (vLast * -1));
    }

    //einde youtubeslider

    imgBig('.rundown');
    imgBig('.big');


});
//=======================================================================

$.fn.corner = function () {
    this.each(function () {
        var el = $(this);
        if (el.height() != 0) {
            var elMl = parseInt(el.css('margin-left').replace('px', ''));
            var elMt = parseInt(el.css('margin-top').replace('px', ''));
            if (isNaN(elMl)) { elMl = 0 }
            if (isNaN(elMt)) { elMt = 0 }
            if (el.parent().attr('class') == 'cornerWrap') {
                el.parent().find('.c1').css({ 'left': (elMl * 1) + 'px', 'top': (elMt * 1) + 'px' }).parent().find('.c2').css({ 'left': (el.width() - 15 + elMl) + 'px', 'top': elMt + 'px', 'background-position': '0 -15px' }).parent().find('.c3').css({ 'left': (elMl) + 'px', 'top': (el.height() - 15 + elMt) + 'px', 'background-position': '-15px 0' }).parent().find('.c4').css({ 'left': (el.width() - 15 + elMl) + 'px', 'top': (el.height() - 15 + elMt) + 'px', 'background-position': '0 0' });
            } else {
                el.wrap('<div class="cornerWrap" style="position:relative; width:'+el.width()+'px" />').parent().prepend('<div class="c1"></div><div class="c2"></div><div class="c3"></div><div class="c4"></div>').parent().find('.c1').css({ 'left': (elMl * 1) + 'px', 'top': (elMt * 1) + 'px' }).parent().find('.c2').css({ 'left': (el.width() - 15 + elMl) + 'px', 'top': elMt + 'px', 'background-position': '0 -15px' }).parent().find('.c3').css({ 'left': (elMl) + 'px', 'top': (el.height() - 15 + elMt) + 'px', 'background-position': '-15px 0' }).parent().find('.c4').css({ 'left': (el.width() - 15 + elMl) + 'px', 'top': (el.height() - 15 + elMt) + 'px', 'background-position': '0 0' });
            }
        }


    });


}

function NavGebruikteMachines() {
    $('#navigatie_gebruikt').css('display', 'inherit');
    $('#navigatie_verwacht').css('display', 'none');
    $('#navigatie_defect').css('display', 'none');
}
function NavVerwachteMachines() {
    $('#navigatie_gebruikt').css('display', 'none'); // = 'none';
    $('#navigatie_verwacht').css('display', 'inherit');
    $('#navigatie_defect').css('display', 'none');
}
function NavDefecteMachines() {
    $('#navigatie_gebruikt').css('display', 'none');
    $('#navigatie_verwacht').css('display', 'none');
    $('#navigatie_defect').css('display', 'inherit');
}

function getQueryVariable(variable) {
  var query = window.location.search.substring(1);
  var vars = query.split("&");
  for (var i=0;i<vars.length;i++) {
	var pair = vars[i].split("=");
	if (pair[0] == variable) {
	  return pair[1];
	}
  } 
  //alert('Query Variable ' + variable + ' not found');
}

function imgBig(v1) { //ronde hoekjes voor afbeeldingen
	$(v1).corner();
}
imgBig('.big');
//imgBig('.imgProduct');

//thumbnailslider op detailpagina
var maxbar = 0;
var demax = 0;
var varSpeed = 8;
var pages = 0;
var page = 0;
var slider = 0;
function goslider(a,b,c,d,e,f){
	$('#ImageListTop').animate({'opacity':0.1});
		slider = $(a).height();
		$(c).each(function(){
			maxbar = maxbar + $(this).height() + parseInt($(this).css('margin-bottom'));
			});
		pages = (parseInt(maxbar / slider));
		demax = slider-maxbar;
		$(e).click(function(){godown();return false;}); 
		$(d).click(function(){gotop();return false;});
		$('.LinkListImage img').each(function (index) {
		    $(this).parent().attr('href', $(this).attr('src'));
		    var v_w = $(this).width();
		    var v_h = $(this).height();
		    var v_src = $(this).attr('src');
		    if (index == 0) {
		        $('.artikelimgbig').attr('href', v_src.replace('small', 'large')).attr('rel', 'group1').attr('num', 0).addClass('detailSlide');
		    } else {
		        $('.artikelimgbig').before('<a href="' + v_src.replace('small', 'large') + '" class="detailSlide" rel="group1"><img style="display:none;" src="' + v_src.replace('small', 'medium') + '" /></a>');
		    };
		});
		$('.detailSlide').fancybox({
            'cyclic':true,
            'centerOnScroll':true,
            'overlayOpacity':0.7,
            'overlayColor':'#244172',
            'hideOnOverlayClick': false
        });
        function yHide(){
            $('#youtubeSlider').hide();
        }
        function yShow() {
            $('#youtubeSlider').show();
        }
        $('.artikelimgbig').click(function () {
            var vNum = $(this).attr('num') - 1;
            yHide();
            if (vNum > -1) {
                setTimeout('$.fancybox.pos(' + vNum + ');', 700);
            }
        });
        $('#fancybox-close').click(function () { yShow() });
	$('#ImageList').find('img').corner();
	$('body').prepend('<img id="tmp" style="left:-9999px;position:fixed;" />');

	$('.LinkListImage').click(function () {
	    $('.artikelimgbig').attr('num', $(this).index());
	    var newImg = $(this).attr('href').replace('small', 'medium');
	    $('#tmp').replaceWith('<img id="tmp" style="left:-9999px;position:fixed;" src="' + newImg + '" />');
	    $('#tmp').fadeIn(10, function () {
	        var tmpW = $(this).width();
	        var tmpH = $(this).height();
	        var tmpS = $(this).attr('src');
	        $('.big').parent().fadeOut('fast', function () {
	            $(this).replaceWith('<img style="border-width: 0px;" src="' + tmpS + '" class="big">');
	            imgBig('.big');
	        });


	    });

	    return false;
	});
		
}

var mytimer; 
function godown() { 
  nl =  $('#ImageList').css('top');
  nl = nl.substr(0,nl.length-2);
  nl = parseInt(nl);
  if ((nl - slider) < demax){
	  nl = demax;
	  $('#ImageListBottom').animate({'opacity':0.1});
	  $('#ImageListTop').animate({'opacity':1});
  }else{
    nl = nl - slider;
    $('#ImageListTop').animate({ 'opacity': 1 });
  }
	$('#ImageList').animate({'top':nl+'px'});
}

var mytimer2; 
function gotop() { 
  nl =  $('#ImageList').css('top');
  nl = nl.substr(0,nl.length+2); 
  nl = parseInt(nl);  
  if ((nl + slider) > 0){
	  nl = 0;
	  $('#ImageListTop').animate({'opacity':0.1});
	  $('#ImageListBottom').animate({'opacity':1});
  }else{
    nl = nl + slider;
    $('#ImageListBottom').animate({ 'opacity': 1 });
  }  
	$('#ImageList').animate({'top':nl+'px'});
}
 
//einde thumbnailslider op detailpagina
 
 //slideshow

//frontrotator

$(window).load(function () {
    if ($('#frontrotator')) {
        var frontTotal = $('#frontrotator .frontItem').size();
        var frontActive = 1;
        $('#frontrotator').append('<img id="mainImage" class="new" /><div class="tekstvlak"></div><div class="tekst"></div><div id="butNavigatie"></div><div id="mask"></div>');
        $('#frontrotator .tekstvlak').css('opacity', 0.5);
        $('#frontrotator #mainImage').attr('src', $('#frontrotator .frontItem:nth-child(1)').find('img').attr('src'));
        $('#frontrotator .tekst').html($('#frontrotator .frontItem:nth-child(1)').find('.frontText').html())
        var frontDuration = 2000;
        for (i = 0; i <= (frontTotal - 1); i = i + 1) {
            $('#frontrotator #butNavigatie').prepend('<a class="navButtons but' + (i + 1) + '" num="' + (i + 1) + '" href="' + (i + 1) + '"></a>');
        }
        $('#butNavigatie .but1').addClass('active');
    }

});

if ($('#frontrotator')) {

    $('#butNavigatie .navButtons').live('click', function () {
        clearTimeout(mytimer);
        frontRotate($(this).attr('href'));
        return false;
    });

    var mytimer;
    $(function () {
        mytimer = setInterval('frontRotate();', 6000);
    });
}


function frontRotate(var1){
	var frontTotal = $('#frontrotator .frontItem').size();
	var frontActive = parseInt($('#butNavigatie .active').attr('num'));
	frontActive ++;
	if (frontActive > frontTotal){frontActive = 1}	
	var fadeDur = 3000;
	if (var1) {
		frontActive = var1;
			$('#frontrotator #mainImage.new').stop();
			$('#frontrotator #mainImage').removeClass('new').addClass('old').css('z-index',12).before('<img id="mainImage" class="new" border=0 />');
			$('#frontrotator #mainImage.new').css('z-index',15).hide().attr('src',$('#frontrotator .frontItem:nth-child('+frontActive+')').find('img').attr('src')).show()
						$('#frontrotator .tekst').html($('#frontrotator .frontItem:nth-child('+frontActive+')').find('.frontText').html());
						$('#butNavigatie .navButtons').removeClass('active');
						$('#butNavigatie .but'+frontActive).addClass('active');
				$('#frontrotator #mainImage.old').remove();
		}else{
			$('#frontrotator #mainImage').removeClass('new').addClass('old').css('z-index',12).before('<img id="mainImage" class="new" border=0  />');
			if ($('#frontrotator #mainImage.new').length != 0) {
			    var newSrc = $('#frontrotator .frontItem:nth-child(' + frontActive + ')').find('img').attr('src');
			    $('#frontrotator #mainImage.new')
                .css('z-index', 15)
                .hide()
                .attr('src', newSrc)
                .fadeIn(3000,function(){
					$('#frontrotator .tekstvlak,#frontrotator .tekst').animate({'margin-bottom':-70},function(){
							$('#frontrotator .tekst').html($('#frontrotator .frontItem:nth-child('+frontActive+')').find('.frontText').html());
							$('#butNavigatie .navButtons').removeClass('active');
							$('#butNavigatie .but'+frontActive).addClass('active');
						}).animate({'margin-bottom':0});
					$('#frontrotator #mainImage.old').remove();
				});
			}
		}
}

//einde frontrotator

function slideSwitch(v1) {
	var $active = $('#rotatorWrap .item.active');

	if ( $active.length == 0 ) $active = $('#rotatorWrap .item:last');

	var $next =  $active.next().length ? $active.next()
		: $('#rotatorWrap .item:first');

	$active.addClass('last-active');
	
	var activebutt = (($next.find('img').attr('class').replace('image','')*1) + 1);
	$('.rotatorcontrols a').removeClass('current');
	$('.rotatorcontrols a:nth-child('+activebutt+')').addClass('current');
	$('#rotatorWrap .item').removeClass('active');
	$next.css({opacity: 0.0})
		.addClass('active')
		.animate({opacity: 1.0}, v1, function() {
			$active.removeClass('active last-active');
		});
	//$('h2').html($('#rotatorWrap .item.active').find('img').attr('class'));
}

jQuery.parseQuery = function (A, B) { var C = (typeof A === "string" ? A : window.location.search), E = { f: function (F) { return unescape(F).replace(/\+/g, " ") } }, B = (typeof A === "object" && typeof B === "undefined") ? A : B, E = jQuery.extend({}, E, B), D = {}; jQuery.each(C.match(/^\??(.*)$/)[1].split("&"), function (F, G) { G = G.split("="); G[1] = E.f(G[1]); D[G[0]] = D[G[0]] ? ((D[G[0]] instanceof Array) ? (D[G[0]].push(G[1]), D[G[0]]) : [D[G[0]], G[1]]) : G[1] }); return D };
//var q = $.parseQuery(); //parses the window location querystring by default
//console.log(q.foo); //returns string 'bar'
//console.log(q.count); //returns array ['aon','do','tri']
////optionally pass a querystring
//q = $.parseQuery('foo=boo&bar=boy'); //with or without the '?'
////optionally pass an options object, currently the only option is the processing function 'f'. In this example any true/false string values are converted to boolean
//q = $.parseQuery({'f':function(v){v = unescape(v).replace(/\+/g,' ');return (v==('false'))?!v:(v==('true'))?!!v:v;}});
//console.log(q.test + ', ' + typeof q.test); //logs true, boolean


/*************************************************
**  jQuery Multi Column Lists version 1.0.5
**  copyright Fred Kelly, licensed GPL & MIT
**  http://fredkelly.net/
**************************************************/

(function ($) {
    $.fn.multilists = function (options, callback) {

        var defaults = {
            cols: 2
        };

        var options = $.extend(defaults, options);

        return this.each(function () {

            obj = $(this);
            $items = obj.children('li');

            // don't waste time on empty lists
            if ($items.size() > 1) {

                // if no width set, container divided by columns
                if (!options.colWidth) {
                    options.colWidth = Math.floor(obj.width() / options.cols);
                }

                // create our variables
                var currentCol = 0;
                var vertReturn = 0;
                var maxHeight = 0;

                // loop list items
                $items.each(function (i) {
                    // negative top margin
                    if (i % Math.round($items.size() / options.cols + 0.5) == 0 && i > 0) {
                        $(this).css('margin-top', -vertReturn);
                        if (vertReturn > maxHeight) {
                            maxHeight = vertReturn;
                        }
                        vertReturn = 0;
                        currentCol++;
                    }
                    // add left margin
                    if (currentCol > 0) {
                        $(this).css('margin-left', currentCol * (options.colWidth + ($(this).outerWidth(true) - $(this).width())) + 'px');
                    }
                    vertReturn += $(this).outerHeight();
                });

                // set height on containing list
                obj.height(maxHeight);

            }

            // if the callback is a function, call it...
            if (typeof callback == 'function') {
                callback.call(this);
            }

        });

    };
})(jQuery);

