function round_mod(value, precision)
{
    var precision_number = Math.pow(10, precision);
    return Math.round(value * precision_number) / precision_number;
}

function calculate_amounts()
{
	
	var days     = 0;
	var charge   = 0;
	var cost     = 0;
	var accuracy = 0;
	
	//Calculate cost accuracy
	$('.current_film_config input[name=percent]').each(function(){
		if ($(this).prev().prev().is(':checked'))
		accuracy += parseFloat($(this).val());															
	});
	accuracy = 90 - accuracy;
	if (accuracy < 0) accuracy = 0;
	$('.cost_accuracy').text(accuracy);
	$('input[name=accuracy]').val(accuracy);
	
	if ($('.current_film_config').hasClass('animation_config'))
	{
		var job      = parseFloat($('.animation_main_choose input[name=cost]').val());
		var res      = parseFloat($('.animation_resolution_config input:checked').parent().find('input[name=multiplier]').val());
		var shots    = parseFloat($('.animation_shots_config input:checked').parent().find('input[name=multiplier]').val());
		var duration = parseFloat($('.animation_duration_config input:checked').parent().find('input[name=multiplier]').val());
		var factor   = parseFloat($('.animation_duration_config input:checked').parent().find('input[name=factor]').val());
		var char     = parseFloat($('.animation_char_config input:checked').parent().find('input[name=multiplier]').val());
		
		var sfx = 0;
		if ($('.animation_effects_config input:checked').is(':radio'))
		sfx = parseFloat($('.animation_effects_config input:checked').parent().find('input[name=multiplier]').val());
		else
		{
			$('.animation_effects_config input:checked').each(function(){
				sfx += parseFloat($(this).parent().find('input[name=multiplier]').val());
			});
		}
		
		var multi = 0;
		if ($('.animation_multiversions_config input:checked').is(':radio'))
		multi = parseFloat($('.animation_multiversions_config input:checked').parent().find('input[name=multiplier]').val());
		else
		{
			$('.animation_multiversions_config input:checked').each(function(){
				multi += parseFloat($(this).parent().find('input[name=multiplier]').val());
			});
		}
		
		var output = 0;
		if ($('.animation_output_config input:checked').is(':radio'))
		output = parseFloat($('.animation_output_config input:checked').parent().find('input[name=multiplier]').val());
		else
		{
			$('.animation_output_config input:checked').each(function(){
				output += parseFloat($(this).parent().find('input[name=multiplier]').val());
			});
		}
		
		var days = round_mod(((duration * 0.5) + (char*factor)+ (sfx*char)+ (multi*0.5) ) * res * shots + (output*0.5*res), 2);
		if (accuracy < 35) days = 0;
		
		var cost   = round_mod(days * job, 2);
		
		var charge = job;

		
		$('.working_days').text(days);
		$('.job_cost').text(cost);
		$('.charge_per_day').text(charge);
		
		$('.print_email input[name=days]').val(days);
		$('.print_email input[name=cost]').val(cost);
		$('.print_email input[name=charge]').val(charge);


	}
	
	
	
	if ($('.current_film_config').hasClass('infograph_config'))
	{
		var job      = parseFloat($('.infofilm_main_choose input[name=cost]').val());
		var res      = parseFloat($('.infofilm_resolution_config input:checked').parent().find('input[name=multiplier]').val());
		var duration = parseFloat($('.infofilm_duration_config input:checked').parent().find('input[name=multiplier]').val());
		var task     = parseFloat($('.infofilm_tasks_config input:checked').parent().find('input[name=multiplier]').val());
		
		var multi = 0;
		if ($('.infofilm_multiversions_config input:checked').is(':radio'))
		multi = parseFloat($('.infofilm_multiversions_config input:checked').parent().find('input[name=multiplier]').val());
		else
		{
			$('.infofilm_multiversions_config input:checked').each(function(){
				multi += parseFloat($(this).parent().find('input[name=multiplier]').val());
			});
		}
		
		var output = 0;
		if ($('.infofilm_output_config input:checked').is(':radio'))
		output = parseFloat($('.infofilm_output_config input:checked').parent().find('input[name=multiplier]').val());
		else
		{
			$('.infofilm_output_config input:checked').each(function(){
				output += parseFloat($(this).parent().find('input[name=multiplier]').val());
			});
		}
		
		var days = round_mod((duration / (task * 10)) * res + multi + output, 2);
		if (accuracy < 35) days = 0;
		
		var cost   = round_mod(days * job, 2);
		
		var charge = job;

		
		$('.working_days').text(days);
		$('.job_cost').text(cost);
		$('.charge_per_day').text(charge);
		
		$('.print_email input[name=days]').val(days);
		$('.print_email input[name=cost]').val(cost);
		$('.print_email input[name=charge]').val(charge);

	}
	
	
	if ($('.current_film_config').hasClass('pack_config'))
	{
		var job      = parseFloat($('.pack_main_choose input[name=cost]').val());
		var res      = parseFloat($('.pack_resolution_config input:checked').parent().find('input[name=multiplier]').val());
		var duration = parseFloat($('.pack_duration_config input:checked').parent().find('input[name=multiplier]').val());
		var shots    = parseFloat($('.pack_shots_config input:checked').parent().find('input[name=multiplier]').val());
		var factor   = parseFloat($('.pack_duration_config input:checked').parent().find('input[name=factor]').val());
		
		var task = 0;
		if ($('.pack_tasks_config input:checked').is(':radio'))
		task = parseFloat($('.pack_tasks_config input:checked').parent().find('input[name=multiplier]').val());
		else
		{
			$('.pack_tasks_config input:checked').each(function(){
				task += parseFloat($(this).parent().find('input[name=multiplier]').val());
			});
		}
		
		var multi = 0;
		if ($('.pack_multiversions_config input:checked').is(':radio'))
		multi = parseFloat($('.pack_multiversions_config input:checked').parent().find('input[name=multiplier]').val());
		else
		{
			$('.pack_multiversions_config input:checked').each(function(){
				multi += parseFloat($(this).parent().find('input[name=multiplier]').val());
			});
		}
		
		var output = 0;
		if ($('.pack_output_config input:checked').is(':radio'))
		output = parseFloat($('.pack_output_config input:checked').parent().find('input[name=multiplier]').val());
		else
		{
			$('.pack_output_config input:checked').each(function(){
				output += parseFloat($(this).parent().find('input[name=multiplier]').val());
			});
		}
		
		var days = round_mod( (duration / 10 + shots / 3) * task * res + output + (multi / factor), 2 );
		if (accuracy < 35) days = 0;
		
		var cost   = round_mod(days * job, 2);
		
		var charge = job;

		
		$('.working_days').text(days);
		$('.job_cost').text(cost);
		$('.charge_per_day').text(charge);
		
		$('.print_email input[name=days]').val(days);
		$('.print_email input[name=cost]').val(cost);
		$('.print_email input[name=charge]').val(charge);
	}
	
	
	if ($('.current_film_config').hasClass('stills_config'))
	{
		var job      = parseFloat($('.stills_main_choose input[name=cost]').val());
		var res      = parseFloat($('.stills_resolution_config input:checked').parent().find('input[name=multiplier]').val());
		var product  = parseFloat($('.stills_product_config input:checked').parent().find('input[name=multiplier]').val());
		
		var task = 0;
		if ($('.stills_tasks_config input:checked').is(':radio'))
		task = parseFloat($('.stills_tasks_config input:checked').parent().find('input[name=multiplier]').val());
		else
		{
			$('.stills_tasks_config input:checked').each(function(){
				task += parseFloat($(this).parent().find('input[name=multiplier]').val());
			});
		}
		
		var multi = 0;
		if ($('.stills_multiversions_config input:checked').is(':radio'))
		multi = parseFloat($('.stills_multiversions_config input:checked').parent().find('input[name=multiplier]').val());
		else
		{
			$('.stills_multiversions_config input:checked').each(function(){
				multi += parseFloat($(this).parent().find('input[name=multiplier]').val());
			});
		}
		
		var output = 0;
		if ($('.stills_output_config input:checked').is(':radio'))
		output = parseFloat($('.stills_output_config input:checked').parent().find('input[name=multiplier]').val());
		else
		{
			$('.stills_output_config input:checked').each(function(){
				output += parseFloat($(this).parent().find('input[name=multiplier]').val());
			});
		}
		
		var days = round_mod( (product*res)+ task + multi + output, 2 );
		if (accuracy < 35) days = 0;
		
		var cost   = round_mod(days * job, 2);
		
		var charge = job;

		
		$('.working_days').text(days);
		$('.job_cost').text(cost);
		$('.charge_per_day').text(charge);
		
		$('.print_email input[name=days]').val(days);
		$('.print_email input[name=cost]').val(cost);
		$('.print_email input[name=charge]').val(charge);
	}

}

$(document).ready(function() {	

	$('label').click(function(){
		return true;
	});
	
	jQuery.preloadImages = function() 
	{   
		 for(var i = 0; i<arguments.length; i++)   
		{
			  jQuery("<img>").attr("src", arguments[i]);   
		}
	}
	
	$.preloadImages("images/partners/behance_hover.png");
	$.preloadImages("images/partners/infofiller_hover.png");
	$.preloadImages("images/partners/quotation_hover.png");
	
	$('div.btn').click(function(){
		if ($('input[name=email]').val() == '')
		{
			alert('Please enter email address');
		}
		else
		{
			expression = /^([0-9a-z_\-]+@[0-9a-z_]+\.[a-z]{2,3})+$/i;
			
	        if (!expression.test($('input[name=email]').val()))
	        {
	        	alert('Email is not valid. Enter valid email address');
	        }
	        else
	        {
	        	$.ajax({
			        type        : "POST",
			        async		: true,
			        url			: 'email.php',
			        data		: $('form').serialize(),
			        success		: function(response) {
					
		        		$('.privacy_text').animate({top:'401px'},{queue:true,  duration:1000});
		        		$('.faq_text').animate({top:'401px'},{queue:true,  duration:1000});
		        		$('.email_success').animate({top:'345px'},{queue:true,  duration:1000});
		        		
		        		$('input[name=email]').attr('value', '');
			        }
			   });
	        }
		}
		
	});
	
	$('li.privacy a').click(function(){
		$('.privacy_text').animate({top:'23px'},{queue:true,  duration:1000});
		$('.faq_text').animate({top:'401px'},{queue:true,  duration:1000});
		$('.email_success').animate({top:'401px'},{queue:true,  duration:1000});

		return false;
	});
	
	$('li.faq a').click(function(){
		$('.faq_text').animate({top:'23px'},{queue:true,  duration:1000});
		$('.privacy_text').animate({top:'401px'},{queue:true,  duration:1000});
		$('.email_success').animate({top:'401px'},{queue:true,  duration:1000});

		return false;
	});
	
	$('.minimize, .overflow h1').click(function(){
		$(this).parent().animate({top:'401px'},{queue:false,  duration:1000});
		
		return false;
	});
	
	calculate_amounts();
	
	//Highlite label if radio or checkbox checked
	$('.check_one').each(function(index, item){
		if($(item).find('input').is(':checked')) $(item).find('label').addClass('active');
	});
	
	
	//Job descriptions switcher
	var speed = 1000;
	
	$('#animation').click(function(){
		$('.current_film_config .selectors').animate({left:'1040px'},{queue:false,  duration:speed-200});
		$('.current_film_config .selector_title').animate({left:'1040px'},{queue:false,  duration:speed-200});	
		$('.current_film_config').removeClass('current_film_config');
		$('.animation_config .selectors').animate({left:'0px'},{queue:false,  duration:speed});
		$('.animation_config .selector_title').animate({left:'0px'},{queue:false,  duration:speed});
		$('.animation_config').addClass('current_film_config');
		calculate_amounts();
	});
	
	$('#pack_replace').click(function(){
		$('.current_film_config .selectors').animate({left:'1040px'},{queue:false,  duration:speed-200});	
		$('.current_film_config .selector_title').animate({left:'1040px'},{queue:false,  duration:speed-200});	
		$('.current_film_config').removeClass('current_film_config');
		$('.pack_config .selectors').animate({left:'0px'},{queue:false,  duration:speed});
		$('.pack_config .selector_title').animate({left:'0px'},{queue:false,  duration:speed});
		$('.pack_config').addClass('current_film_config');
		calculate_amounts();
	});
	
	
	$('#info_film').click(function(){
		$('.current_film_config .selectors').animate({left:'1040px'},{queue:false,  duration:speed-200});
		$('.current_film_config .selector_title').animate({left:'1040px'},{queue:false,  duration:speed-200});	
		$('.current_film_config').removeClass('current_film_config');
		$('.infograph_config .selectors').animate({left:'0px'},{queue:false,  duration:speed});
		$('.infograph_config .selector_title').animate({left:'0px'},{queue:false,  duration:speed});
		$('.infograph_config').addClass('current_film_config');
		calculate_amounts();
	});
	
	$('#print').click(function(){
		$('.current_film_config .selectors').animate({left:'1040px'},{queue:false,  duration:speed-200});
		$('.current_film_config .selector_title').animate({left:'1040px'},{queue:false,  duration:speed-200});	
		$('.current_film_config').removeClass('current_film_config');
		$('.stills_config .selectors').animate({left:'0px'},{queue:false,  duration:speed});
		$('.stills_config .selector_title').animate({left:'0px'},{queue:false,  duration:speed});
		$('.stills_config').addClass('current_film_config');
		calculate_amounts();
	});
	
	//Main slider of testimonials
	$('#testimonials').cycle({ 
		fx:      'fade',
		speed:    500, 
		timeout:  5000,
		activePagerClass: 'active',
		pager: 'ul.pager',
		pagerEvent: 'click.cycle',   	
		pagerAnchorBuilder: function(idx, slide) { 
        	return '<li><a href="#">&nbsp;</a></li>'; 
    	}
	});
	
	//Highlite label on radio or checkbox clicks
	$('input[type="radio"]').click(function(){
		$(this).closest('.selectors').find('label').removeAttr('class');
		$(this).next().attr('class','active');
		
		if ($(this).closest('.selectors').find('input[type="checkbox"]').length > 0)
		{
			$(this).closest('.selectors').find('input[type="checkbox"]').removeAttr('checked');	
			$(this).closest('.selectors').find('span.checkbox').css('background-position', '0pt 0pt');		
		}
		calculate_amounts();
	});
	
	$('input[type="checkbox"]').click(function(){
		if ($(this).is(':checked'))
		$(this).next().attr('class','active');
		else
		$(this).next().attr('class','');
		
		
		if ($(this).closest('.selectors').find('input[type="radio"]').length > 0)
		{
			$(this).closest('.selectors').find('input[type="radio"]').removeAttr('checked');	
			$(this).closest('.selectors').find('span.radio').css('background-position', '0pt 0pt');		
			$(this).closest('.selectors').find('span.radio').next().next().removeAttr('class');
		}
		var i = 0;
		$(this).closest('.selectors').find('span.checkbox').each(function(){
			if ($(this).parent().find('label').attr('class') == 'active')
				i++;
		})

		if ($(this).closest('.selectors').find('input[type="radio"]').length > 0 && i == 0)
		{
			$(this).parent().parent().find('input[type=radio]:first').click();
			if ($.browser.msie  && parseInt($.browser.version) == 8) 
			{
				$(this).parent().parent().find('span.radio:first').css('background-position', '0px -36px');
			}	
		}
		
		calculate_amounts()
	});

});

$(window).bind("load",function(){
	

							   
	var speed = 1000;
							   
	$('.radio').click(function(){					   
		$(this).closest('.selectors').find('label').removeAttr('class');
		$(this).next().next().attr('class','active');
		
		if ($(this).closest('.selectors').find('input[type="checkbox"]').length > 0)
		{
			$(this).closest('.selectors').find('input[type="checkbox"]').removeAttr('checked');	
			$(this).closest('.selectors').find('span.checkbox').css('background-position', '0pt 0pt');		
		}
		calculate_amounts()
	});	
	
	
	$('.checkbox').click(function(){
		if ($(this).next().is(':checked'))
		$(this).next().next().attr('class','active');
		else
		$(this).next().next().attr('class','');
		
		if ($(this).closest('.selectors').find('input[type="radio"]').length > 0)
		{
			$(this).closest('.selectors').find('input[type="radio"]').removeAttr('checked');	
			$(this).closest('.selectors').find('span.radio').css('background-position', '0pt 0pt');		
			$(this).closest('.selectors').find('span.radio').next().next().removeAttr('class');
		}
		
		var i = 0;
		$(this).closest('.selectors').find('span.checkbox').each(function(){
			if ($(this).parent().find('label').attr('class') == 'active')
				i++;
		})

		if ($(this).closest('.selectors').find('input[type="radio"]').length > 0 && i == 0)
		{
			$(this).parent().parent().find('input[type=radio]:first').click();
			if ($.browser.msie  && parseInt($.browser.version) == 8) 
			{
				$(this).parent().parent().find('span.radio:first').css('background-position', '0px -36px');
			}
		}
		
		calculate_amounts()
	});
	
	
	$('.animation_main_choose span').click(function(){
		$('.current_film_config .selectors').animate({left:'1040px'},{queue:false,  duration:speed-200});
		$('.current_film_config .selector_title').animate({left:'1040px'},{queue:false,  duration:speed-200});	
		$('.current_film_config').removeClass('current_film_config');
		$('.animation_config .selectors').animate({left:'0px'},{queue:false,  duration:speed});
		$('.animation_config .selector_title').animate({left:'0px'},{queue:false,  duration:speed});
		$('.animation_config').addClass('current_film_config');
		calculate_amounts();
	});
	
	$('.pack_main_choose span').click(function(){
		$('.current_film_config .selectors').animate({left:'1040px'},{queue:false,  duration:speed-200});	
		$('.current_film_config .selector_title').animate({left:'1040px'},{queue:false,  duration:speed-200});	
		$('.current_film_config').removeClass('current_film_config');
		$('.pack_config .selectors').animate({left:'0px'},{queue:false,  duration:speed});
		$('.pack_config .selector_title').animate({left:'0px'},{queue:false,  duration:speed});
		$('.pack_config').addClass('current_film_config');
		calculate_amounts();
	});
	
	
	$('.infofilm_main_choose span').click(function(){
		$('.current_film_config .selectors').animate({left:'1040px'},{queue:false,  duration:speed-200});
		$('.current_film_config .selector_title').animate({left:'1040px'},{queue:false,  duration:speed-200});	
		$('.current_film_config').removeClass('current_film_config');
		$('.infograph_config .selectors').animate({left:'0px'},{queue:false,  duration:speed});
		$('.infograph_config .selector_title').animate({left:'0px'},{queue:false,  duration:speed});
		$('.infograph_config').addClass('current_film_config');
		calculate_amounts();
	});
	
	$('.stills_main_choose span').click(function(){
		$('.current_film_config .selectors').animate({left:'1040px'},{queue:false,  duration:speed-200});
		$('.current_film_config .selector_title').animate({left:'1040px'},{queue:false,  duration:speed-200});	
		$('.current_film_config').removeClass('current_film_config');
		$('.stills_config .selectors').animate({left:'0px'},{queue:false,  duration:speed});
		$('.stills_config .selector_title').animate({left:'0px'},{queue:false,  duration:speed});
		$('.stills_config').addClass('current_film_config');
		calculate_amounts();
	});
							   
});


