function PriceWithOptions(decimal_place,product_id,controller){
	var Decimal_Place = decimal_place;
	var Controller = controller;
	var Product_id = product_id;
	var Price = $('#base_price_' + Product_id).val();
	var options= [];

	$('#'+Controller+'_options_'+Product_id+' select :selected').each(function(i, selected){
		options[i] = $(selected).attr('id');
	});
    Price = parseFloat(Price);	
	if(options.length!=undefined){	
		var i;	
		for (i in options){
		    var OptionID = (options[i].replace("option_",""));
			var OptionPrice = String("option_price"+OptionID);
			var OptionValue = $('#'+OptionPrice).attr('value');
			var mySplitResult = OptionValue.split("#");
			if(mySplitResult[0] == "+"){
				Price = Price + parseFloat(mySplitResult[1]);
			} else {
				Price = Price - parseFloat(mySplitResult[1]);
			}
		}
	}
	$('#product_with_options_'+Product_id).fadeOut('slow',function(){
	$('#product_with_options_'+Product_id).fadeIn('normal').text(((Price*100)/100).toFixed([Decimal_Place]));
	});
	return;
}