jQuery(document).ready(function() {
	function servicesSlides(sliderId){
	//	alert(slider);
		var slider = jQuery(sliderId);
		if ( !slider ) return;
		sliderlist = jQuery(slider).find('ul');
		sliderhiddenItemsNum = jQuery(sliderlist).children().length-1;
		sliderli = jQuery(sliderlist).find('li');
		
		ml = sliderli.css('margin-left');
		mr = sliderli.css('margin-right');
		sliderincrement = sliderli.outerWidth() + parseInt(ml, 10) + parseInt(mr, 10);
		slidertotIncrement = jQuery(sliderlist).css('marginLeft');
		//alert(slidertotIncrement);
		slidermaxRightIncrement = sliderincrement*sliderhiddenItemsNum*(-1); 

		


			
		jQuery(slider).find('.next').click(function(event){
			event.preventDefault();

			if(slidertotIncrement>slidermaxRightIncrement){
				slidertotIncrement = slidertotIncrement - sliderincrement;
			} else {
				slidertotIncrement = 0;	
			}

			jQuery(sliderlist).animate({
				'margin-left' : slidertotIncrement
			});
		});
		
		jQuery(slider).find('.previous').click(function(event){
			event.preventDefault();

			if(slidertotIncrement<0){
				slidertotIncrement = slidertotIncrement + sliderincrement;
			} else {
				slidertotIncrement = slidermaxRightIncrement;
			}

			jQuery(sliderlist).animate({
				'margin-left' : slidertotIncrement
			});
		});
		
		//alert(sliderincrement);
		
	};
	
servicesSlides('#servicesSlider');

	jQuery('#youtubeVideos li a').each(function(i, element){
		var video_id = this.href.split('v=')[1];
		var ampersandPosition = video_id.indexOf('&');
		if(ampersandPosition !== -1) {
		  video_id = video_id.substring(0, ampersandPosition);
		}
		var url = 'http://gdata.youtube.com/feeds/api/videos/'+video_id+'?alt=json';

		if (!jQuery('body').hasClass('ie') ) {
			var data = jQuery.getJSON(url, function(data){
				jQuery(element).append(jQuery('<div class="views">' + data.entry.yt$statistics.viewCount + ' views </div> <div class="play"></div>'));
			});
		}
	}).click(function() {
		jQuery.fancybox({
				'padding'		: 0,
				'autoScale'		: false,
				'transitionIn'	: 'elastic',
				'transitionOut'	: 'elastic',
				'title'			: this.title,
				'width'		: 680,
				'height'		: 495,
				'href'			: this.href.replace(new RegExp("watch\\?v=", "i"), 'v/'),
				'type'			: 'swf',
				'swf'			: {
				   	 'wmode'		: 'transparent',
					'allowfullscreen'	: 'true'
				}
			});

		return false;
	});
	
	
	jQuery('.video_box a').click(function(){
	
	jQuery.fancybox({
				'padding'		: 0,
				'autoScale'		: false,
				'transitionIn'	: 'elastic',
				'transitionOut'	: 'elastic',
				'title'			: this.title,
				'width'		: 680,
				'height'		: 495,
				'href'			: this.href.replace(new RegExp("watch\\?v=", "i"), 'v/'),
				'type'			: 'swf',
				'swf'			: {
				   	 'wmode'		: 'transparent',
					'allowfullscreen'	: 'true'
				}
			});

		return false;
	}).append(jQuery('<div class="play"></div>'));
	
	//alert('0');
	try {
		validateForm(jQuery('#commentform'), 0);
	} catch(e){
	}
	try {
		validateForm(jQuery('#wpcf7-f2-p58-o1 form'));
	} catch(e){
	}
	try {
		validateForm(jQuery('#wpcf7-f4-p557-o1 form'));
	} catch(e){
	}
	try {
		validateForm(jQuery('#wpcf7-f5-p1292-o1 form'));
	} catch(e){
	}
	try {
		initSlider();
	} catch(e){
	}
	try {
		multiUpload();
	} catch(e){
	}
});

function isValid(element){
//Check if input or textarea is valid. Velidation rules are determined by classes on element - required or email
	
	var result = 1;
	//http://snipplr.com/view/35886/
	var mailMask = /^[-a-z0-9~!$%^&_=+}{\'?]+(.[-a-z0-9~!$%^&=+}{\'?]+)*@([a-z0-9][-a-z0-9]*(.[-a-z0-9]+)*.(aero|arpa|biz|com|coop|edu|gov|info|int|mil|museum|name|net|org|pro|travel|mobi|[a-z][a-z])|([0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}))(:[0-9]{1,5})?$/i;
	
	if ( jQuery(element).hasClass('wpcf7-validates-as-required') && ( (jQuery(element).val() || jQuery(element).innerHTML ) === undefined ) ){
		result = 0;
		element.message = '<span>Please fill the required field.</span>';
		//alert(element.message);
	} else if ( jQuery(element).hasClass('wpcf7-validates-as-email') ) {
		
		result = result && (jQuery(element).val().match(mailMask) !== null);
		if ( !result ) { element.message = '<span class="twolines"><strong>Please make sure your e-mail is correct.</strong>For example: john@doe.com</span>' }

		//alert('validemail | ' + result);
	};

	return result;
};

function validateForm(form, messages){		
	if (messages == null){
   		messages = 1;
 	};
	//turn off submit button
	toggleSubmit(form, 0);
	

	jQuery(form).keyup(function(){
		result = 1;
		jQuery(form).find(".wpcf7-validates-as-required, .wpcf7-validates-as-email").each(function(i, element){
			result = result && isValid(element);
		});
		if ( result ) {
			//alert('on');
			toggleSubmit(form);
		} else {
			toggleSubmit(form, 0);
		};
		//alert(checked);
		
	});
	validatedFormElements = jQuery(form).find(".wpcf7-validates-as-required, .wpcf7-validates-as-email");
	
	validatedFormElements.each(function(i, element){
		if ( jQuery(element).hasClass('error') || jQuery(element).val() ) {
			jQuery(element).keyup(function(){
				if ( !isValid(element) ){
					jQuery(element).removeClass('valid').addClass('error');
					if (messages) wpcf7NotValidTip(jQuery(element).parent(), element.message);
				} else {
					jQuery(element).removeClass('error').addClass('valid');
				};
			})
		} else {
			jQuery(element).blur(function(){
				if ( !isValid(element) ){
					jQuery(element).removeClass('valid').addClass('error');
					if (messages) wpcf7NotValidTip(jQuery(element).parent(), element.message);

				} else {
					jQuery(element).removeClass('error').addClass('valid');
				};
			});
		};

	});
	



};

function toggleSubmit(form, state) {
	
	var submit = jQuery(form).find('input:submit');
	var note = jQuery('input:submit').parent().find('.note');
	if ( !submit.length ) return; 
	
	if ( state==0 ) {
		//alert(submit + ' | ' + note + ' off');

		submit.animate({
			opacity: 0.5
			},
			50,
			function(){
				submit.attr('disabled', 'disabled');
				submit.addClass('disabled');
				if (note) note.fadeIn(0);
			});
	} else {	
		//alert(submit + ' | ' + note + ' on');

		submit.animate({
			opacity: 1
			},
			75,
			function(){
				submit.removeAttr('disabled');
				submit.removeClass('disabled');
				if (note) note.fadeOut(30);

			});
	};
};

document.onkeydown = NavigateThrough;

var focusInInput = false;

if (document.getElementsByTagName)
    onload = function () {
        var e, i = 0;
        while (e = document.getElementsByTagName('INPUT')[i++]) {
            if (e.type == 'text' || e.type == 'search') e.onfocus = function () {focusInInput = true};
            if (e.type == 'text' || e.type == 'search') e.onblur = function () {focusInInput = false};
        }
        i = 0;
        while (e = document.getElementsByTagName('TEXTAREA')[i++]) {
            e.onfocus = function () {focusInInput = true};
            e.onblur = function () {focusInInput = false};
        }
    };

function NavigateThrough (event) {
	if (!document.getElementById) return;

	if (window.event) event = window.event;

	if (event.ctrlKey && !focusInInput){
		var link = null;
		var href = null;
		switch (event.keyCode ? event.keyCode : event.which ? event.which : null){
			case 0x25:
				link = document.getElementById ('nextCritboardItem');
				break;
			case 0x27:
				link = document.getElementById ('previousCritboardItem');
				break;
			case 0x24:
				href = '/';
				break;
		}

		if (link && link.href) document.location = link.href;
		if (href) document.location = href;
	}			
}
jQuery('.cat-6 .article p').each(function(i, element){ jQuery(this).prepend(jQuery('<a href="#'+(i+1)+'" class="anchor">'+(i+1)+'</a>')) });

jQuery('.article :header').each(function(i, el){
	anchor = jQuery(el).next().children('.anchor');
	jQuery(el).attr('id', jQuery(anchor).attr('id') );
})



