jQuery(document).ready(function(){
	jQuery().assignCheckboxes();
	jQuery().bindChanges();
	jQuery().calcTotal();
	jQuery().moreInfo();
	jQuery('#checkToggle').click(function(){
		jQuery().checkToggle(jQuery(this).val());
	});
	jQuery('#descriptionToggle').click(function(){
		jQuery().minimizeToggle(jQuery(this).val());
	});
	/* Set Powersite Checkmark By Default */
	jQuery('#fakepowersiteCheck').click().parents('.item').siblings('.description').css({'display':'block'});
});

jQuery.fn.assignCheckboxes = function(){
	jQuery("input.check").each( function() {
		this.checked ? jQuery("#fake"+this.id).addClass('fakechecked') : jQuery("#fake"+this.id).removeClass('fakechecked');
	});
	// function to 'check' the fake ones and their matching checkboxes
	jQuery(".fakecheck").click(function(){
		(jQuery(this).hasClass('fakechecked')) ? jQuery(this).removeClass('fakechecked') : jQuery(this).addClass('fakechecked');
		jQuery(this.hash).trigger("click").trigger("change");
		/* Dark Border On Click
		(jQuery(this).parents('.item').hasClass('borderSetLight')) ? jQuery(this).parents('.item').removeClass('borderSetLight').addClass('borderSetDark') : jQuery(this).parents('.item').addClass('borderSetLight').removeClass('borderSetDark');
		*/
		
		return false;
	});
}

jQuery.fn.bindChanges = function(){
	jQuery('.input').each(function(){
		jQuery(this).bind("change",function(){
			jQuery().calcTotal();
		});
	});
}

jQuery.fn.calcTotal = function(){

	/*Add Powersite Totals*/
	var powerPrice = 0;
	jQuery('.powCheck:checked').each(function(){
		powerPrice += parseInt(jQuery(this).attr('value'));
	});
	
	/*Add Mod Totals*/
	var modPrice = 0;
	jQuery('.modCheck:checked').each(function(){
		modPrice += parseInt(jQuery(this).attr('value'));
	});
	
	/*Add Optional Totals*/
	var optionalPrice = 0;
	jQuery('.drop').each(function(){
		optionalPrice += parseInt(jQuery(this).attr('value'));	
	});
	
	/*Calculate Total Numbers*/
	jQuery('.pows').text(jQuery('.powCheck:checked').size());
	jQuery('.mods').text(jQuery('.modCheck:checked').size());
	jQuery('.pages').text(jQuery('.dropPages option:selected').text());
	jQuery('.copy').text(jQuery('.dropCopy option:selected').text());
	jQuery('.photos').text(jQuery('.dropPhoto option:selected').text());
	
	/*Calculate Total Prices
	jQuery('.powPrice').text(powerPrice);
	jQuery('.modPrice').text(modPrice);
	jQuery('.pagePrice').text(optionalPrice);
	*/
	
	/*Calculate Grand Total*/
	jQuery('.price').text(powerPrice + modPrice + optionalPrice);
}



jQuery.fn.moreInfo = function(){
	jQuery('.inquiry .moreInfo').each(function(){
		jQuery(this).click(function(){
			jQuery(this).siblings('.description').slideToggle(600,function(){
				(jQuery(this).siblings('.moreInfo').text() == "Maximize") ? jQuery(this).siblings('.moreInfo').text("Minimize") : jQuery(this).siblings('.moreInfo').text("Maximize");
			});
		});
	});
}

jQuery.fn.checkToggle = function(state){
	jQuery('.inquiry .fakecheck').each(function(i){
		if(state == "Select All"){
			if (!jQuery(this.hash).is(':checked')){
				jQuery(this).click();
			}
			jQuery('#checkToggle').val('Deselect All');
		}
		if(state == "Deselect All"){
			if (jQuery(this.hash).is(':checked')){
				jQuery(this).click();
			}
			jQuery('#checkToggle').val('Select All');
		}
	});
}

jQuery.fn.minimizeToggle = function(state){
	jQuery('.inquiry .description').each(function(){
		if(state == "Minimize All"){
			jQuery(this).slideUp(600, function(){
				jQuery('#descriptionToggle').val('Maximize All');
				jQuery(this).siblings('.moreInfo').text("Maximize");
			});	
		}
		if(state == "Maximize All"){
			jQuery(this).slideDown(600, function(){
				jQuery('#descriptionToggle').val('Minimize All');
				jQuery(this).siblings('.moreInfo').text("Minimize");
			});
		}
	});
}