document.write("<scr" + "ipt src='/_ssi/js/_tables.js' type='text/javascript'><\/scr" + "ipt>");

function addMe(elem, istype) {
	var nID = updateMe(elem);

	if (istype == 1) {
		var strDesc1Val = "Food & Amount";
		var strDesc2Val = "Where you Hungry?";
		var strDesc3Val = "Comments";
	}
	else if (istype == 2) {
		var strDesc1Val = "Activity Type";
		var strDesc2Val = "Where/Who with?";
		var strDesc3Val = "Duration";
	}
	else if (istype == 3) {
		strDesc1Val = "Goal";
		strDesc2Val = "Motivation";
		strDesc3Val = "Progress";
	}

	if (nID) {
		var currentDate = new Date();
		var yNow = currentDate.getFullYear();
		
		var strType = document.getElementById('inpType').value;
		
		var strSDateDD = document.getElementById('inpSDateDD').value;
		var strSDateMM = document.getElementById('inpSDateMM').value;
		var strSDateYY = document.getElementById('inpSDateYY').value;

		var strEDateDD = document.getElementById('inpEDateDD').value;
		var strEDateMM = document.getElementById('inpEDateMM').value;
		var strEDateYY = document.getElementById('inpEDateYY').value;
		
		var strDesc1 = document.getElementById('inpDesc1').value;
		var strDesc2 = document.getElementById('inpDesc2').value;
		var strDesc3 = document.getElementById('inpDesc3').value;
		
		var strComplete = 0;
		if (document.getElementById('inpComplete').checked) {
			var strComplete = 1;
		}

		var tr = document.getElementById('tblData').insertRow(1);
		tr.id = nID;
		tr.vAlign = 'top';
		tr.style.backgroundColor = '#FFFFCC';

		//var td = tr.insertCell(-1);
		//td.className = 'button';
		//td.innerHTML = "<a href='javascript:void(0)' title='Delete' onclick='deleteMe(this, "+ nID +", "+ istype +")' class='deleteMe'>Delete</a><a href='javascript:void(0)' title='Cancel' onclick='editMe(this, "+ nID +", 1)' class='cancelMe'>Cancel</a>";
		
		var td = tr.insertCell(-1);
		td.className = 'inpDate';

		var strSDate = "<input type='hidden' id='inpType"+ nID +"' name='strType"+ nID +"' value='"+ strType +"'/>";
		strSDate = strSDate +"<div class='IsGroup'>";
		strSDate = strSDate +"<label id='lblSDateDD"+ nID +"' style='float: left'>";
		//if (strSDateDD < 10) {
		//	strSDate = strSDate +"0";
		//}
		strSDate = strSDate + strSDateDD;
		strSDate = strSDate +"</label>";
		strSDate = strSDate +"<select id='inpSDateDD"+ nID +"' name='strSDateDD"+ nID +"' style='float: left'>";
		for (i=1;i<=31;i++) {
			if (i < 10) {
				var optVal = "0"+ i;
			}
			else {
				var optVal = ''+ i;
			}
			
			strSDate = strSDate +"<option value='"+ optVal +"'";
			if (strSDateDD == i) {
				strSDate = strSDate +" selected='selected'";
			}
			strSDate = strSDate +">"+ optVal +"</option>";
		}

		strSDate = strSDate +"</select>";
		strSDate = strSDate +"<label style='float: left'>&nbsp;/&nbsp;</label>";

		strSDate = strSDate +"<label id='lblSDateMM"+ nID +"' style='float: left'>";
		//if (strSDateMM < 10) {
		//	strSDate = strSDate +"0";
		//}
		strSDate = strSDate + strSDateMM;
		strSDate = strSDate +"</label>";
		strSDate = strSDate +"<select id='inpSDateMM"+ nID +"' name='strSDateMM"+ nID +"' style='float: left; margin-left: 2px'>";

		for (i=1;i<=12;i++) {
			if (i < 10) {
				var optVal = "0"+ i;
			}
			else {
				var optVal = ''+ i;
			}
			
			strSDate = strSDate +"<option value='"+ optVal +"'";
			if (strSDateMM == i) {
				strSDate = strSDate +" selected='selected'";
			}
			strSDate = strSDate +">"+ optVal +"</option>";
		}

		strSDate = strSDate +"</select>";
		strSDate = strSDate +"<label style='float: left' >&nbsp;/&nbsp;</label>";

		strSDate = strSDate +"<label id='lblSDateYY"+ nID +"' style='float: left'>"+ strSDateYY +"</label>";
		strSDate = strSDate +"<select id='inpSDateYY"+ nID +"' name='strSDateYY"+ nID +"' style='float: left; margin-left: 2px'>";

		for (i=2009;i<=yNow+5;i++) {
			var optVal = ''+ i;

			strSDate = strSDate +"<option value='"+ optVal +"'";
			if (strSDateYY == i) {
				strSDate = strSDate +" selected='selected'";
			}
			strSDate = strSDate +">"+ optVal.substr(2,2) +"</option>";
		}

		strSDate = strSDate +"</select>";
		strSDate = strSDate +"</div>";
		
		td.innerHTML = strSDate;
		
		var td = tr.insertCell(-1);
		td.className = 'inpDate';
		
		var strEDate = "<div class='IsGroup'>";
		strEDate = strEDate +"<label id='lblEDateDD"+ nID +"' style='float: left'>";
		//if (strEDateDD < 10) {
		//	strEDate = strEDate +"0";
		//}
		strEDate = strEDate + strEDateDD;
		strEDate = strEDate +"</label>";
		strEDate = strEDate +"<select id='inpEDateDD"+ nID +"' name='strEDateDD"+ nID +"' style='float: left'>";
		for (i=1;i<=31;i++) {
			if (i < 10) {
				var optVal = "0"+ i;
			}
			else {
				var optVal = ''+ i;
			}
			
			strEDate = strEDate +"<option value='"+ optVal +"'";
			if (strEDateDD == i) {
				strEDate = strEDate +" selected='selected'";
			}
			strEDate = strEDate +">"+ optVal +"</option>";
		}

		strEDate = strEDate +"</select>";
		strEDate = strEDate +"<label style='float: left'>&nbsp;/&nbsp;</label>";

		strEDate = strEDate +"<label id='lblEDateMM"+ nID +"' style='float: left'>";
		//if (strEDateMM < 10) {
		//	strEDate = strEDate +"0";
		//}
		strEDate = strEDate + strEDateMM;
		strEDate = strEDate +"</label>";
		strEDate = strEDate +"<select id='inpEDateMM"+ nID +"' name='strEDateMM"+ nID +"' style='float: left; margin-left: 2px'>";

		for (i=1;i<=12;i++) {
			if (i < 10) {
				var optVal = "0"+ i;
			}
			else {
				var optVal = ''+ i;
			}
			
			strEDate = strEDate +"<option value='"+ i +"'";
			if (strEDateMM == i) {
				strEDate = strEDate +" selected='selected'";
			}
			strEDate = strEDate +">"+ optVal +"</option>";
		}

		strEDate = strEDate +"</select>";
		strEDate = strEDate +"<label style='float: left' >&nbsp;/&nbsp;</label>";

		strEDate = strEDate +"<label id='lblEDateYY"+ nID +"' style='float: left'>"+ strEDateYY +"</label>";
		strEDate = strEDate +"<select id='inpEDateYY"+ nID +"' name='strEDateYY"+ nID +"' style='float: left; margin-left: 2px'>";
		
		for (i=2009;i<=yNow+5;i++) {
			var optVal = ''+ i;
			
			strEDate = strEDate +"<option value='"+ optVal +"'";
			if (strEDateYY == i) {
				strEDate = strEDate +" selected='selected'";
			}
			strEDate = strEDate +">"+ optVal.substr(2,2) +"</option>";
		}

		strEDate = strEDate +"</select>";
		strEDate = strEDate +"</div>";
		
		td.innerHTML = strEDate;

		var td = tr.insertCell(-1);
		td.style.paddingTop = '0px';
		td.style.paddingBottom = '5px';
		
		var strDetails = "<table cellpadding='0' cellspacing='0'>";
		strDetails = strDetails +"<tr style='background: none'>";
			strDetails = strDetails +"<td style='width: 115px; font-weight: bold; padding-left: 0px'>"+ strDesc1Val +"</td>";
			strDetails = strDetails +"<td>";
				strDetails = strDetails +"<label id='lblDesc1"+ nID +"'>"+ strDesc1 +"</label>";
				strDetails = strDetails +"<input type='text' id='inpDesc1"+ nID +"' name='strDesc1"+ nID +"' class='inpDesc' value='"+ strDesc1.replace("'", "\'") +"' title='"+ strDesc1Val +"' alt='"+ strDesc1Val +"' accesskey='' tabindex='1' onfocus='this.select()'/>";
			strDetails = strDetails +"</td>";
		strDetails = strDetails +"</tr>";
		strDetails = strDetails +"<tr style='background: none'>";
			strDetails = strDetails +"<td style='font-weight: bold; padding-left: 0px'>"+ strDesc2Val +"</td>"
			strDetails = strDetails +"<td>";
				strDetails = strDetails +"<label id='lblDesc2"+ nID +"'>"+ strDesc2 +"</label>";
				strDetails = strDetails +"<input type='text' id='inpDesc2"+ nID +"' name='strDesc2"+ nID +"' class='inpDesc' value='"+ strDesc2.replace("'", "\'") +"' title='"+ strDesc2Val +"' alt='"+ strDesc2Val +"' accesskey='' tabindex='1' onfocus='this.select()'/>";
			strDetails = strDetails +"</td>";
		strDetails = strDetails +"</tr>";
		strDetails = strDetails +"<tr style='background: none'>";
			strDetails = strDetails +"<td style='font-weight: bold; padding-left: 0px'>"+ strDesc3Val +"</td>"
			strDetails = strDetails +"<td>"
				strDetails = strDetails +"<label id='lblDesc3"+ nID +"'>"+ strDesc3 +"</label>";
				strDetails = strDetails +"<input type='text' id='inpDesc3"+ nID +"' name='strDesc3"+ nID +"' class='inpDesc' value='"+ strDesc3.replace("'", "\'") +"' title='"+ strDesc3Val +"' alt='"+ strDesc3Val +"' accesskey='' tabindex='1' onfocus='this.select()'/>";
			strDetails = strDetails +"</td>";
		strDetails = strDetails +"</tr>";
		
		strDetails = strDetails +"<tr style='background: none'>";
			strDetails = strDetails +"<td style='font-weight: bold; padding: 4px 0px'>Goal Complete</td>";
			strDetails = strDetails +"<td>";
				strDetails = strDetails +"<label id='lblComplete"+ nID +"'>";
				if (strComplete == 1) {
					strDetails = strDetails +"Yes";
				}
				else {
					strDetails = strDetails +"No";
				}
				strDetails = strDetails +"</label>";
				strDetails = strDetails +"<input type='checkbox' id='inpComplete"+ nID +"' name='strComplete"+ nID +"' value='"+ strComplete +"' accesskey='' tabindex='1'/>";
			strDetails = strDetails +"</td>";
		strDetails = strDetails +"</tr>";
		
		strDetails = strDetails +"</table>";

		td.innerHTML = strDetails;

		var td = tr.insertCell(-1);
		td.className = 'button';
		td.innerHTML = "<a href='javascript:void(0)' title='Edit' onclick='editMe(this, "+ nID +")' class='editMe'>Edit</a><a href='javascript:void(0)' title='Save' onclick='updateMe(this, "+ nID +")' class='saveMe'>Save</a><a href='javascript:void(0)' title='Delete' onclick='deleteMe(this, "+ nID +", "+ istype +")' class='deleteMe'>Delete</a><a href='javascript:void(0)' title='Cancel' onclick='editMe(this, "+ nID +", 1)' class='cancelMe'>Cancel</a>";

		addNew(elem, 1);
		reOrder();

		if (document.getElementById('tblData').rows.length > 2) {
			if (document.getElementById('pgMSG')) document.getElementById('pgMSG').style.display = "block";
			if (document.getElementById('pgNoMSG')) document.getElementById('pgNoMSG').style.display = "none";
		}

		//alert('The Goal has been successfully added');
		
		if (document.getElementById('inpDesc1')) document.getElementById('inpDesc1').value = '';
		if (document.getElementById('inpDesc2')) document.getElementById('inpDesc2').value = '';
		if (document.getElementById('inpDesc3')) document.getElementById('inpDesc3').value = '';
		
		tr.style.backgroundColor = '#FFFFCC';
		window.setTimeout(function() {
			tr.style.backgroundColor = '';
		},600);
	}
}

function updateMe(elem, rID) {
	var sURL = "/_ssi/ajax/_updateG.asp";

	if (rID == null) {
		var strType = document.getElementById('inpType');
		
		var strSDateDD = document.getElementById('inpSDateDD');
		var strSDateMM = document.getElementById('inpSDateMM');
		var strSDateYY = document.getElementById('inpSDateYY');
		
		var strEDateDD = document.getElementById('inpEDateDD');
		var strEDateMM = document.getElementById('inpEDateMM');
		var strEDateYY = document.getElementById('inpEDateYY');

		var strDesc1 = document.getElementById('inpDesc1');
		var strDesc2 = document.getElementById('inpDesc2');
		var strDesc3 = document.getElementById('inpDesc3');
		
		var strComplete = document.getElementById('inpComplete');
		
		var sVars = "";
	}
	else {
		var strType = document.getElementById('inpType'+ rID);
		
		var strSDateDD = document.getElementById('inpSDateDD'+ rID);
		var strSDateMM = document.getElementById('inpSDateMM'+ rID);
		var strSDateYY = document.getElementById('inpSDateYY'+ rID);
		
		var strEDateDD = document.getElementById('inpEDateDD'+ rID);
		var strEDateMM = document.getElementById('inpEDateMM'+ rID);
		var strEDateYY = document.getElementById('inpEDateYY'+ rID);

		var strDesc1 = document.getElementById('inpDesc1'+ rID);
		var strDesc2 = document.getElementById('inpDesc2'+ rID);
		var strDesc3 = document.getElementById('inpDesc3'+ rID);
		
		var strComplete = document.getElementById('inpComplete'+ rID);

		var sVars = "ID="+ rID +"&";
	}

	sVars = sVars +"strType="+ escape(strType.value);

	sVars = sVars +"&strSDateDD="+ escape(strSDateDD.value);
	sVars = sVars +"&strSDateMM="+ escape(strSDateMM.value);
	sVars = sVars +"&strSDateYY="+ escape(strSDateYY.value);
	
	sVars = sVars +"&strEDateDD="+ escape(strEDateDD.value);
	sVars = sVars +"&strEDateMM="+ escape(strEDateMM.value);
	sVars = sVars +"&strEDateYY="+ escape(strEDateYY.value);
	
	sVars = sVars +"&strDesc1="+ escape(strDesc1.value);
	sVars = sVars +"&strDesc2="+ escape(strDesc2.value);
	sVars = sVars +"&strDesc3="+ escape(strDesc3.value);
	
	if (strComplete.checked) {
		sVars = sVars +"&strComplete="+ escape(strComplete.value);
	}
	
	if (elem != null) {
		var objTR = elem.parentNode.parentNode;

		var objINPs = objTR.getElementsByTagName('INPUT');
		var objSELs = objTR.getElementsByTagName('SELECT');
		var objTXTs = objTR.getElementsByTagName('TEXTAREA');

		for (i=0;i<objINPs.length;i++) {
			if (objINPs[i] && objINPs[i].alt) {
				objINPs[i].style.backgroundColor = '#fff';

				if (objINPs[i].value.length == 0) {
					objINPs[i].style.backgroundColor = '#e5e5e5';
					alert('Please enter the "'+ objINPs[i].alt +'"');
					objINPs[i].focus();

					return false;
				}
			}
		}
	}
	
	var rVal = exeAjaxR(sURL, sVars, eFunc);

	if (rVal.length == 0) {
		for (i=0;i<objINPs.length;i++) {
			if (document.getElementById(objINPs[i].id.replace('inp', 'lbl'))) {
				if (objINPs[i].type == 'checkbox') {
					if (objINPs[i].checked) {
						document.getElementById(objINPs[i].id.replace('inp','lbl')).innerHTML = 'Yes';
					}
					else {
						document.getElementById(objINPs[i].id.replace('inp','lbl')).innerHTML = 'No';
					}
				}
				else {
					document.getElementById(objINPs[i].id.replace('inp','lbl')).innerHTML = document.getElementById(objINPs[i].id).value;
				}
			}
		}
		
		for (i=0;i<objSELs.length;i++) {
			if (document.getElementById(objSELs[i].id.replace('inp', 'lbl')) && document.getElementById(objSELs[i].id)[document.getElementById(objSELs[i].id).selectedIndex].value.length > 0) {
				document.getElementById(objSELs[i].id.replace('inp','lbl')).innerHTML = document.getElementById(objSELs[i].id)[document.getElementById(objSELs[i].id).selectedIndex].value;
			}
		}

		for (i=0;i<objTXTs.length;i++) {
			if (document.getElementById(objTXTs[i].id.replace('inp', 'lbl'))) {
				if (document.getElementById(objTXTs[i].id).value.length > 0) {
					document.getElementById(objTXTs[i].id.replace('inp','lbl')).innerHTML = document.getElementById(objTXTs[i].id).value;
				}
				else {
					document.getElementById(objTXTs[i].id.replace('inp','lbl')).innerHTML = "None specified";
				}
			}
		}

		editMe(elem, rID, 1);

		//alert('The selected Goal has been successfully updated\n');

		objTR.style.backgroundColor = '#FFFFCC';
		window.setTimeout(function() {
			objTR.style.backgroundColor = '';
		},600);
	}
	else {
		if (rVal.indexOf('NEW:') == 0) {
			return rVal.replace('NEW:','');
		}
		else {
			if (rVal.indexOf('ERR:') == 0) {
				alert(rVal.replace('ERR:',''));
				return false;
			}
			else {
				alert('An unknown error occured. Please contact the website administrator');
			}
		}
	}
}
