/*
	Autor: Grzegorz Jaworek
	E-mail: grzegorz.jaworek@gmail.com
	www: http://gjaworek.pl 
	Tel.: +48 696 818 300
	ąę
*/

jQuery(document).ready(function(jQuery){
	w = parseInt((jQuery('body').width()-997)/2);
	if (w>0) jQuery('#loginout').css({'margin-right':(-1*w)+'px','padding-right':w+'px'});
	jQuery('#navigation li:first-child').addClass('first');
	jQuery('#navigation a').each(function () {
		jQuery(this).html('<span class="dots">'+jQuery(this).text()+'</span>');
	}); 	
	jQuery('#navigation a').prepend('<span class="before" /><span class="after" />');
	
	jQuery('.newsletter-subscription select').each(function () {
		jQuery(this).attr('id',jQuery(this).attr('class'));
	}); 
	jQuery('#footer_newsletter input[name="np1"]').parents('tr').remove();
	jQuery('#footer_newsletter input:submit').parents('td').html(jQuery('#footer_newsletter input:submit'));
	jQuery('#footer_newsletter input[name="ne"]').val('Adres e-mail').attr('rel','Adres e-mail').parents('td').prev('th').remove();
	
	jQuery('a').each(function () {
		if (jQuery(this).attr('href')) {
			if (jQuery(this).attr('href').indexOf('wp-login.php?redirect_to')>=0) jQuery(this).addClass('simplemodal-login');
			if (jQuery(this).attr('href').indexOf(home)<0&&jQuery(this).attr('href').indexOf('javascript')<0) jQuery(this).attr('target','_blank');
		}
	}); 
		
	jQuery('.section-toggle a').click(function () {
		jQuery(this).parents('.section-toggle').next('section').animate({height:'toggle'},400);
		return false;
	}); 
	
	try {
		jQuery('#office_phone').html(jQuery('#office_phone').html().replace('22','<span class="hide">kier. </span>22'));
	} catch(err) {}
	
	try {
		jQuery('option').each(function () {
			(jQuery(this).attr('title'))?jQuery(this).attr('title'):jQuery(this).attr('title',jQuery(this).val());
		}); 
		jQuery('select').msDropDown();
	} catch(err) {}
	
	try {
		jQuery('input:checkbox:not(.nofx)').checkbox();
		jQuery('input:radio').checkbox({cls: 'jquery-radio-checkbox'});
	} catch(err) {}
	
	// try {
		// Cufon.replace('', hover: true });
		// Cufon.replace('', { fontFamily: 'arial', hover: true });
	// } catch(err) {}
	
	try {
		jQuery('.widget_calendar #next, .widget_calendar #prev').each(function () {
			jQuery(this).parents('table').after('<span id="'+jQuery(this).attr('id')+'">'+jQuery(this).html()+'</span>');
		}); 
		jQuery('.widget_calendar th').first().html(jQuery('.widget_calendar th').first().html().replace('P','pon'));
		jQuery('.widget_calendar th').each(function () {
			jQuery(this).html(jQuery(this).html().replace('W','wt').replace('Ś','śr').replace('C','czw').replace('P','pt').replace('S','sb').replace('N','nd'));
		}); 
	} catch(err) {}
	
	jQuery('.newsletter-widget').append('<div class="clear" /><a href="'+home+'regulamin/" target="_blank" class="fr">regulamin</a>');
		
	jQuery('.totop').click(function () {
		scroll(0,0);
		return false;
	}); 
	
	jQuery('.reference').not('.reference:first-child').animate({opacity:0}, 0);
	jQuery('#references').animate({height:jQuery('.reference:first-child').height()+40}, 0);
	if ( !jQuery.browser.msie ) {
		jQuery('#references_navigation a:first').addClass('activeSlide').find('img:first').stop().animate({opacity:1}, 0);
	} else {
		jQuery('#references_navigation a:first').addClass('activeSlide').find('img:first').css({'filter':'progid:DXImageTransform.Microsoft.BasicImage(grayScale=0)'});
		jQuery('#references_navigation a:first').mouseover(function () { jQuery(this).find('img:first').css({'filter':'progid:DXImageTransform.Microsoft.BasicImage(grayScale=0)'}); });
		jQuery('#references_navigation a:first').mouseout(function () { jQuery(this).find('img:first').css({'filter':'progid:DXImageTransform.Microsoft.BasicImage(grayScale=0)'}); });
	}
	jQuery('#references_navigation a').click(function () {
		if ( !jQuery.browser.msie ) {
			jQuery('.activeSlide').removeClass('activeSlide').find('img:first').stop().animate({opacity:0}, 400).find('.img_grayscale').stop().animate({opacity:1}, 400);
		} else {			
			jQuery('.activeSlide').mouseover(function () { jQuery(this).find('img:first').css({'filter':'progid:DXImageTransform.Microsoft.BasicImage(grayScale=0)'}); });
			jQuery('.activeSlide').mouseout(function () { jQuery(this).find('img:first').css({'filter':'progid:DXImageTransform.Microsoft.BasicImage(grayScale=1)'}); });
			jQuery('.activeSlide').removeClass('activeSlide').find('img:first').css({'filter':'progid:DXImageTransform.Microsoft.BasicImage(grayScale=1)'});
		}
		next = jQuery('.reference').eq(jQuery(this).attr('idx'));
		if ( !jQuery.browser.msie ) {
			jQuery(this).addClass('activeSlide').find('img:first').stop().animate({opacity:1}, 400);
		} else {			
			jQuery(this).addClass('activeSlide').find('img:first').css({'filter':'progid:DXImageTransform.Microsoft.BasicImage(grayScale=0)'});
			jQuery(this).mouseover(function () { jQuery(this).find('img:first').css({'filter':'progid:DXImageTransform.Microsoft.BasicImage(grayScale=0)'}); });
			jQuery(this).mouseout(function () { jQuery(this).find('img:first').css({'filter':'progid:DXImageTransform.Microsoft.BasicImage(grayScale=0)'}); });
		}
		jQuery('#references').animate({height:next.height()+40}, 400);
		jQuery('.reference:visible').animate({opacity:0}, 400);
		next.animate({opacity:1}, 400);
		return false;
	}); 

	try {
		elements = jQuery('#partners li');
		jQuery('#partners').append(elements);
		jQuery('#partners ul').remove();
		elementsPerPage = 6;
		for (var i = 0;i < elements.length;i+=elementsPerPage){
			 elements.filter(':eq('+i+'),:lt('+(i+elementsPerPage)+'):gt('+i+')').wrapAll('<ul></ul>');
		};
		if (elements.length > elementsPerPage) {
			jQuery('#partners').cycle({
				fx:     'fade',
				speed:  600,
				timeout: 6000,
				cleartypeNoBg: true
			});
			jQuery('#partners').mouseover(function () { jQuery(this).cycle('pause'); });
			jQuery('#partners').mouseout(function () { jQuery(this).cycle('resume'); });
		} 
	} catch(err) {}
	
	try {
		elements = jQuery('#references_navigation .mask');
		elementsPerPage = 4;
		for (var i = 0;i < elements.length;i+=elementsPerPage){
			 elements.filter(':eq('+i+'),:lt('+(i+elementsPerPage)+'):gt('+i+')').wrapAll('<div class="references_navigation_page"></div>');
		};
		if (elements.length > elementsPerPage) {
			jQuery('#references_navigation').before('<a href="#poprzednie" id="references_navigation_prev">poprzednie</a><a href="#następne" id="references_navigation_next">następne</a>');
			jQuery('#references_navigation').cycle({
				fx:     'scrollHorz',
				speed:  600,
				timeout: 0,
				prev: '#references_navigation_prev',
				next: '#references_navigation_next',
				cleartypeNoBg: true
			});
		} 
	} catch(err) {}
	
	try {
		jQuery('.portfolio_slider').each(function() {
			elements = jQuery(this).find('.portfolio_item');
			elementsPerPage = 3;
			for (var i = 0;i < elements.length;i+=elementsPerPage){
				 elements.filter(':eq('+i+'),:lt('+(i+elementsPerPage)+'):gt('+i+')').wrapAll('<div class="portfolio_page"></div>');
			};
			if (elements.length > elementsPerPage) {
				jQuery(this).before('<a href="#poprzednie" id="'+jQuery(this).attr('id')+'_prev" class="portfolio_prev">poprzednie</a><a href="#następne" id="'+jQuery(this).attr('id')+'_next" class="portfolio_next">następne</a>');
				jQuery(this).cycle({
					fx:     'scrollHorz',
					speed:  600,
					timeout: 0,
					prev: '#'+jQuery(this).attr('id')+'_prev',
					next: '#'+jQuery(this).attr('id')+'_next',
					cleartypeNoBg: true
				});
			}
		});
	} catch(err) {}
	
	try {
		jQuery('#banner').each(function () {
			if (jQuery(this).find('.banner').size() > 1) {
				jQuery(this).cycle({ 
					fx: 'fade', 
					speed: 800, 
					timeout: 6000, 
					pager: '#banner_navigation',
					pagerAnchorBuilder: function(idx, slide) {
						return jQuery('#banner_navigation li:eq('+idx+')'); 
					},					
					cleartypeNoBg: true
				});
				jQuery(this).mouseover(function () { jQuery(this).cycle('pause'); });
				jQuery(this).mouseout(function () { jQuery(this).cycle('resume'); });
			}
		});
	} catch(err) {}

	try {
		if (jQuery('.tab').size() > 1) {
			jQuery('#tabs').cycle({ 
				fx:     'fade', 
				speed:  1, 
				timeout: 0, 
				startingSlide: (jQuery('#tabs_nav .activeSlide').parents('li').index()>0)?jQuery('#tabs_nav .activeSlide').parents('li').index():0,
				pager:  '#tabs_nav',
				cleartypeNoBg: true,
				pagerAnchorBuilder: function(idx, slide) { 
					return '#tabs_nav li:eq('+idx+')';
				},	
				before: function(idx, slide) {
					jQuery('#tabs').animate({'height':jQuery(slide).height()},800);
				},		
				after: function(idx, slide) {
					jQuery('#tabs').height(jQuery(slide).height());
				}
			});
		}
	} catch(err) {}
	
	jQuery('label.hide').each(function () {
		jQuery(this).next('input,textarea').attr('rel',jQuery(this).text());
		if (jQuery(this).next('input,textarea').val()=='') {
			jQuery(this).next('input,textarea').val(jQuery(this).text())
		}
		jQuery(this).next('span').find('input,textarea').attr('rel',jQuery(this).text());	
		if (jQuery(this).next('span').find('input,textarea').val()=='') {
			jQuery(this).next('span').find('input,textarea').val(jQuery(this).text())
		}	
	});
	jQuery('input:text, textarea').focus(function () {
		if (jQuery(this).val()==jQuery(this).attr('rel')) jQuery(this).val('');
		jQuery(this).removeClass('invalid');
		jQuery(this).addClass('active');
	});
	jQuery('input:text, textarea').blur(function () {
		if (jQuery(this).val()=='') jQuery(this).val(jQuery(this).attr('rel'));
		jQuery(this).removeClass('active');
	});
	jQuery('form').submit(function () {
		jQuery(this).find('input:text, textarea').each(function () {
			if (jQuery(this).val()==jQuery(this).attr('rel')) jQuery(this).val('');
		});
		jQuery('.wpcf7-response-output').html('').hide();
	});
	jQuery('input:password').each(function () {
		jQuery(this).val('');
		jQuery(this).removeClass('active');
	});
	
	fancyboxInit();
		
	jQuery("#commentform").validate({
		rules: {
			email: {
				required: true,
				email: true
			},
			comment: {
				required: true,
				minlength: 20
			}
		},
        errorPlacement: function(error, element) {
            error.appendTo( element.parents('p') );
        }
	});
	
	jQuery("#newsletter form, .widget_newsletterwidget form").removeAttr('onsubmit');
	jQuery("#newsletter form, .widget_newsletterwidget form").validate({
		rules: {
			ne: {
				required: true,
				email: true
			}
		},
        errorPlacement: function(error, element) {
            error.prependTo( element.parents('form') );
        }
	});
	
	jQuery('#newsletter form input[name="ne"]').attr('id','ne').val('').removeAttr('onblur').removeAttr('onclick').before('<label class="required" for="ne">E-mail</label>');
	jQuery('label.required').prepend('<img src="'+home+'wp-content/themes/na3/images/star.gif" alt="*" />');
	jQuery('label.required-hidden').after('<img src="'+home+'wp-content/themes/na3/images/star.gif" alt="*" class="required-hidden" />');
	
	jQuery(document).ajaxComplete(function() {
		jQuery('.wpcf7-not-valid-tip').each(function () {
			jQuery(this).parents('p,li').append('<label class="error">'+jQuery(this).text()+'</label>');
			jQuery(this).parents('p,li').find('.error').last().show();
			jQuery(this).remove();
		});
	});
	
	jQuery("#leave_number form").validate({
		rules: {
			pname: {
				required: true,
				minlength: 3
			},
			pphone: {
				required: true,
				digits: true,
				minlength: 9,
				maxlength: 12
			},
			pacceptance: {
				required: true
			},
			pcaptcha: {
				required: true
			}
		},
        errorPlacement: function(error, element) {
            error.appendTo( element.parents('p') );
        }
	});
	jQuery("#calculation form").validate({
		rules: {
			cname: {
				required: true,
				minlength: 3
			},
			cphone: {
				required: true,
				digits: true,
				minlength: 9,
				maxlength: 12
			},
			cemail: {
				required: true,
				email: true
			},
			cacceptance: {
				required: true
			},
			cmessage: {
				required: true,
				minlength: 5
			},
			ccaptcha: {
				required: true
			}
		},
        errorPlacement: function(error, element) {
            error.appendTo( element.parents('p') );
        }
	});
	
	if ( jQuery.browser.msie ) {
		if (jQuery.browser.version == '6.0' || jQuery.browser.version == '7.0') {
			jQuery('.inner').append('<div class="clear"></div>');
		} else if (jQuery.browser.version == '9.0') {
			jQuery('#navigation li a').css({'padding':'5px 10px 0 10px'});
			jQuery('#navigation li.first a').css({'padding':'5px 10px 0 9px'});
		}
	} 	
});

jQuery(window).load(function(){
	jQuery("#leave_number input:submit, #calculation input:submit").removeAttr('disabled');
	
	if ( !jQuery.browser.msie ) {
		try {	
			// Fade in images so there isn't a color "pop" document load and then on window load
			jQuery("#partners img, .mask img").animate({opacity:1},0);
			// clone image
			jQuery('#partners img, .mask img').each(function(){
				var el = jQuery(this);
				el.css({"position":"absolute"}).wrap("<div class='img_wrapper' style='display: inline-block'>").clone().addClass('img_grayscale').css({"position":"absolute","z-index":"998","opacity":"0"}).insertBefore(el).queue(function(){
					var el = jQuery(this);
					el.parent().css({"width":this.width,"height":this.height});
					el.dequeue();
				});
				this.src = grayscale(this.src);
			});
			// Fade image 
			jQuery('#partners img, .mask img').mouseover(function(){
				jQuery(this).parent().find('img:first').stop().animate({opacity:1}, 400);
			})
			jQuery('.img_grayscale').mouseout(function(){
				if (jQuery(this).parents('a').hasClass('activeSlide')) { return false; }
				jQuery(this).stop().animate({opacity:0}, 400);
			});	
			jQuery("#partners img, .mask img").css({'display':'block'});
		} catch(err) {}
	} else {
		jQuery('#partners img, .mask img').css({'filter':'progid:DXImageTransform.Microsoft.BasicImage(grayScale=1)'});
		jQuery('#partners img, .mask img').mouseover(function () { jQuery(this).css({'filter':'progid:DXImageTransform.Microsoft.BasicImage(grayScale=0)'}); });
		jQuery('#partners img, .mask img').mouseout(function () { jQuery(this).css({'filter':'progid:DXImageTransform.Microsoft.BasicImage(grayScale=1)'}); });
		jQuery('#references_navigation a:first').addClass('activeSlide').find('img:first').css({'filter':'progid:DXImageTransform.Microsoft.BasicImage(grayScale=0)'});
		jQuery('#references_navigation a:first').mouseover(function () { jQuery(this).find('img:first').css({'filter':'progid:DXImageTransform.Microsoft.BasicImage(grayScale=0)'}); });
		jQuery('#references_navigation a:first').mouseout(function () { jQuery(this).find('img:first').css({'filter':'progid:DXImageTransform.Microsoft.BasicImage(grayScale=0)'}); });
	}
});

function fancyboxInit(){ 
	jQuery('.entry-content .alignleft, .entry-content .aligncenter, .entry-content .alignright, .entry-content .alignnone').not('.entry-content .wp-post-image').parents('a').addClass('fancybox');
	jQuery('.fancybox, .show_fancybox').fancybox({
		'scrolling': 'no', 
		'titleShow': true, 
		'titlePosition': 'inside', 
		'overlayOpacity':'.7',
		'overlayColor':'#000'//, 'onComplete': 
	});
}

function customerShow(){ jQuery(this).children('.customer_details').animate({height: 'show'}, 400);}
function customerHide(){ jQuery(this).children('.customer_details').animate({height: 'hide'}, 400);}
	
// Grayscale w canvas method
function grayscale(src){
	var canvas = document.createElement('canvas');
	var ctx = canvas.getContext('2d');
	var imgObj = new Image();
	imgObj.src = src;
	canvas.width = imgObj.width;
	canvas.height = imgObj.height; 
	ctx.drawImage(imgObj, 0, 0); 
	var imgPixels = ctx.getImageData(0, 0, canvas.width, canvas.height);
	for(var y = 0; y < imgPixels.height; y++){
		for(var x = 0; x < imgPixels.width; x++){
			var i = (y * 4) * imgPixels.width + x * 4;
			var avg = (imgPixels.data[i] + imgPixels.data[i + 1] + imgPixels.data[i + 2]) / 3;
			imgPixels.data[i] = avg; 
			imgPixels.data[i + 1] = avg; 
			imgPixels.data[i + 2] = avg;
		}
	}
	ctx.putImageData(imgPixels, 0, 0, 0, 0, imgPixels.width, imgPixels.height);
	return canvas.toDataURL();
}

function number_format(n, q, r, s, p, i){ with(Math)return(''+round(~~n*(i=pow(10,q||1)))/i).replace(/(\d)(?=(.{3})+$)/g, "$1"+(s||' '))+(q>0?(r||',')+(i=''+round((n||1)*i)).slice(i.length-q):'') } 
