// JavaScript Document
function my_ajax_request(url,pars){
	var check = document.vacation_form;

	var myAjax = new Ajax.Request(url, {
		method: 'post',
		postBody: pars,
		evalScripts:true,
		asynchronous: true,
	    onSuccess: function(transport)
		{
			var response = transport.responseText || "";
			//alert(transport.responseText); 

			var vParsed = response.split(":");
			var responseValue = parseFloat(vParsed[0]) + parseFloat(vParsed[1]) + parseFloat(vParsed[2]) + parseFloat(vParsed[3]) + parseFloat(vParsed[4]) + parseFloat(vParsed[5]) + parseFloat(vParsed[6]);
			//Parse Values and Add them to Array
			if (response != "" && responseValue > 0)
			{
				addVacation(transport.responseText);
			} else
			{
				alert('Invalid vacation, Please enter correct values.');	
			}
		},
		onComplete: function()
		{     
			//Print flight Array and replace innerHtml of summary div.
			vacationDisplay();
		}
	}
	)
}

function ajaxRequest(url,data) {  
	var aj = new Ajax.Request(  
		url, {  
			method:'get',   
			parameters: data,   
			onComplete: getResponse  
		}  
	);  
} 

function getResponse(oReq) {  
	$('result').innerHTML = oReq.responseText;  
} 

function addVacation(vacation)
{
	vCount = vArray.length;
	var vParsed = vacation.split(":");
	
	//Array(flight_co2, car_co2, hotel_co2, tour_co2, cruise_co2, vacation_co2, vacation_amount)
	vArray[vCount] = new Array(vParsed[0],vParsed[1],vParsed[2],vParsed[3],vParsed[4],vParsed[5],vParsed[6]);
	
	document.getElementById("flight_travelers").value = "";
	document.getElementById("departure").value = "Enter Departure City";
	document.getElementById("arrival").value = "Enter Arrival City";
	//document.getElementById("f_type").value = "return";
	document.getElementById("num_cars").value = "";
	document.getElementById("car_nights").value = "";
	document.getElementById("num_rooms").value = "";
	document.getElementById("hotel_nights").value = "";
	document.getElementById("tour_travelers").value = "";
	document.getElementById("tour_days").value = "";
	document.getElementById("cruise_passengers").value = "";
	document.getElementById("cruise_nights").value = "";	
}

function deleteVacation(vIndex)
{
	vArray.splice(vIndex,1);
	vacationDisplay();
}

function addCommas(nStr)
{
	nStr += '';
	x = nStr.split('.');
	x1 = x[0];
	x2 = x.length > 1 ? '.' + x[1] : '';
	var rgx = /(\d+)(\d{3})/;
	while (rgx.test(x1)) {
		x1 = x1.replace(rgx, '$1' + ',' + '$2');
	}
	return x1 + x2;
}

function vacationDisplay()
{
	var summaryDiv = document.getElementById("summary");
	var distance = 0.00;
	var price = 0.00;
	var carbon_balance = 0.00;
	vCount = vArray.length;
		
	//Build Form and Table and Output Flight Array
	var summaryHtml = "";
	if (vCount > 0)
	{
		//summaryHTML = "<form action='http://www.carbonfriendly.com/ecommerce/dispatcher.php' method='post' name='payment_form' id='payment_form' target='_parent'>";
		summaryHTML = "<form action='' method='post' name='payment_form' id='payment_form' target='_parent'>";
		summaryHTML += "<table width='100%' border='0' style='border:1px solid #000; background-color: #FFF;'>";
		summaryHTML += "<tr><th>Flight (t)</th><th>Car (t)</th><th>Hotel (t)</th><th>Tour (t)</th><th>Cruise (t)</th><th nowrap>CO2 (t)</th><th>Price</th><th>Remove</th></tr>";
		for(var i=0;i<vCount;i++) 
		{
			summaryHTML += "<tr>";
			summaryHTML += "<td style='text-align:center;' nowrap>"+vArray[i][0]+"</td>";
			summaryHTML += "<td style='text-align:center;' nowrap>"+vArray[i][1]+"</td>";
			summaryHTML += "<td style='text-align:center;' nowrap>"+vArray[i][2]+"</td>";
			summaryHTML += "<td style='text-align:center;' nowrap>"+vArray[i][3]+"</td>";
			summaryHTML += "<td style='text-align:center;' nowrap>"+vArray[i][4]+"</td>";
			summaryHTML += "<td style='text-align:center;' nowrap>"+vArray[i][5]+"</td>";
			summaryHTML += "<td style='text-align:center;' nowrap>$"+vArray[i][6]+"</td>";
			summaryHTML += "<td style='text-align:center;' nowrap><a href='#' onclick=\"deleteVacation("+i+");\"><img src='/carbon-calculator/widgets/inc/delete.gif' alt= 'Remove' border='0'></a></td>";
			summaryHTML += "</tr>";
			carbon_balance += parseFloat(vArray[i][5]);
			price += parseFloat(vArray[i][6]);
		}
		summaryHTML += "<tr><td colspan='6'>&nbsp;</td></tr>";
		summaryHTML += "<tr><td colspan='6'>&nbsp;</td></tr>";
		//Print Totals
		summaryHTML += "<tr style='font-weight:bold;'>";
		summaryHTML += "<td style='text-align:left;' colspan='5' nowrap>Totals</td>";
		summaryHTML += "<td style='text-align:center;' nowrap>"+Math.round(carbon_balance*100)/100+"</td>";
		summaryHTML += "<td style='text-align:center;' nowrap>$"+Math.round(price*100)/100+" USD</td>";
		summaryHTML += "<td style='text-align:center;'></td>";
		summaryHTML += "</tr>";
		summaryHTML += "</table>";
		//Create Hidden Inputs for Payment Form
		summaryHTML += "<div>";
		summaryHTML += "<input type='hidden' name='carbon_balance' value='"+ carbon_balance +"' />";
		summaryHTML += "<input type='hidden' name='price' value='"+ price +"' />";
		summaryHTML += "<input type='hidden' name='page_referrer' value='ajax_widget' />";
		summaryHTML += "<input type='hidden' name='offset_name' value='Vacation Offset' />";
		//summaryHTML += "<input type='submit' class='submit_button' value='OFFSET NOW'>";
		summaryHTML += "</div>";
		summaryHTML += "</form>";
		//summaryHTML += "<a href=\"#\" onclick=\"popup('popUpDiv')\">How Was This Calculated?</a>";

		var newCarbon = (Math.round(carbon_balance*100)/100);
		var newOffset = (Math.round(price*100)/100);
		ajaxRequest('/carbon-calculator/widgets/inc/updateCCResults.php', 'widget=vacation&userID='+ $F('user_id') +'&uniqueID='+ $F('unique_id') +'&carbon='+ newCarbon +'&offset='+ newOffset);
	} else
	{

		var newCarbon = 0;
		var newOffset = 0;
		ajaxRequest('/carbon-calculator/widgets/inc/updateCCResults.php', 'widget=vacation&userID='+ $F('user_id') +'&uniqueID='+ $F('unique_id') +'&carbon='+ newCarbon +'&offset='+ newOffset);

		summaryHTML = "<div id='contentx'></div>";
	}

	summaryDiv.innerHTML = summaryHTML;
}

function resetVacationData(){

	var newCarbon = 0;
	var newOffset = 0;
	var summaryDiv = document.getElementById("summary");
	vArray = new Array();

	ajaxRequest('/carbon-calculator/widgets/inc/updateCCResults.php', 'widget=vacation&userID='+ $F('user_id') +'&uniqueID='+ $F('unique_id') +'&carbon='+ newCarbon +'&offset='+ newOffset);
	summaryHTML = "<div id='contentx'><div id='add_text'></div></div>";
	summaryDiv.innerHTML = summaryHTML;

	document.vacation_form.reset();
}
