// JavaScript to edit membership and donation forms
var valid_form = true;
var valid_number = true;
var membership_level = 0;
var membership_description = "";
var membership_price = 0;
var donation = 0;

// Saves data from membership level selection
// Passed variables are:
//      y1 = membership level (tp_cat)
//		y2 = membership level description
//		y3 = membership price
function editLevel(y1,y2,y3)
{
	membership_level = y1;
	membership_description = y2;
	membership_price = y3;
	document.getElementById('ta_price').value = membership_price;
}
function editDonation()
{
	w_donation = document.getElementById("ta_donation_amount").value;
	donation = 0;
	if (!w_donation) { // null donation is OK
		document.getElementById("ta_donation_msg").innerHTML="&nbsp;";
	} else if (w_donation == 0) {
		document.getElementById("ta_donation_msg").innerHTML="&nbsp;";
	} else {
		editNumber(w_donation);
		if (!valid_number) {
			document.getElementById("ta_donation_msg").innerHTML="Please enter donation amount in whole dollars, using numbers only.";
			valid_form = false;
		} else {
			if (w_donation > 5000) {
				document.getElementById("ta_donation_msg").innerHTML="Our system cannot handle an on-line donation of more than $5,000.";
				valid_form = false;
			} else {
				document.getElementById("ta_donation_msg").innerHTML="&nbsp;";
				donation = w_donation;
			}
		}
	}
}
function editNumber(w)
{
	valid_number = true;
	i = 0;
	while (i < w.length) {
		if ((w.charAt(i) < "0") || (w.charAt(i) > "9")) {
			valid_number = false;
		}
		i++;
	}
}

// construct ta_item_name field
function constructItemName()
{
	w_item_name = membership_description + " Membership ";
	document.getElementById('ta_title').value = w_item_name;
	w_new_member_checked = document.getElementById("ta_new_member_indic").checked;
	if (w_new_member_checked) {
		w_item_name = w_item_name + "(new";
	} else {
		w_item_name = w_item_name + "(renewal";		
	}
	if (donation > 0) {
		w_item_name = w_item_name + ", $" + membership_price +  ") and additional donation of $" + donation +".00";
	} else {
		w_item_name = w_item_name + ")";
	}
	document.getElementById('ta_item_name').value = w_item_name;
}

function editMembershipForm()
{
	valid_form = true;
	err_msg = "";
	editDonation();
	if (membership_level == 0) {
		valid_form = false;
		err_msg = err_msg + "Please select membership level.\n";
	}
	if (valid_form) {
		constructItemName();
		membership_price = membership_price - 0;
		donation = donation - 0;
		w_amount = membership_price + donation;
		document.getElementById("ta_amount").value = w_amount;
	} else {
		err_msg=err_msg+"\nPlease make changes as indicated and try again.";
		alert(err_msg);		
		return false;		
	}
}

function editDonationForm()
{
	valid_form = true;
	err_msg = "";
	w_donation = document.getElementById("ta_donation_amount").value;
	donation = 0;	
	if (!w_donation) { // donation must be >0 
		document.getElementById("ta_donation_msg").innerHTML="Please enter donation amount.";
		valid_form = false;
	} else if (w_donation == 0) {
		document.getElementById("ta_donation_msg").innerHTML="Please enter donation amount.";
		valid_form = false;
	} else {
		editNumber(w_donation);
		if (!valid_number) {
			document.getElementById("ta_donation_msg").innerHTML="Please enter donation amount in whole dollars, using numbers only.";
			valid_form = false;
		} else {
			if (w_donation > 5000) {
				document.getElementById("ta_donation_msg").innerHTML="Our system cannot handle an on-line donation of more than $5,000.";
				valid_form = false;
			} else {
				document.getElementById("ta_donation_msg").innerHTML="&nbsp;";
				donation = w_donation;
			}
		}
	}
	if (valid_form) {
		document.getElementById('ta_item_name').value = "On-line donation to Arts on the Lake";
		document.getElementById('ta_title').value = "On-line donation";
		document.getElementById("ta_price").value = donation;		
		document.getElementById("ta_amount").value = donation;
	} else {
		err_msg=err_msg+"\nPlease make changes as indicated and try again.";
		alert(err_msg);		
		return false;		
	}
}