// Function used to populate the city ,state, Country 
function fillFieldValue(obj1, obj2) {
	var cityCodeWithName = obj$(obj1).value;
	var stringArray = cityCodeWithName.split("/");
	obj$(getActualComponentId(":cityHiddenId")).value = stringArray[0];
	obj$(getActualComponentId(":cityId")).value = stringArray[1];
	obj$(getActualComponentId(":stateHiddenId")).value = stringArray[2];
	obj$(getActualComponentId(":stateId")).value = stringArray[3];
	obj$(getActualComponentId(":countryHiddenId")).value = stringArray[4];
	obj$(getActualComponentId(":countryId")).value = stringArray[5];
}

// Function to get the form id
function getActualComponentId(obj) {
	var objId;
	var elementsArray = document.forms[0].elements;
	for (i = 0; i < elementsArray.length; i++) {
		var object = elementsArray[i];
		if (object.id.indexOf(obj) != -1) {
			objId = object.id;
			break;
		}
	}
	return objId;
}

// Function for validation for the Registration page
function validate() {

	var validate = "true";
	var noOfErrors = 0;
	var displayHeaderString = "<table width=\"100%\" border=\"0\" class=\"tableborder_tips\" cellspacing=\"2\" cellpadding=\"2\"><tr class=\"NormalText_12B_white\"><td colspan=\"2\" bgcolor=\"red\">"
			+ localizedStrings.msgThereWere + "";
	var displayErrorString = "";

	var elements = document.forms[0].elements;
	var isAnyContactNoFilled = false;
	var message = "";
	var date;
	var year;
	var month;

	for (i = 0; i < elements.length; i++) {

		if (elements[i].id.indexOf(":userNameId") != -1) {
			removeErrorHighlight(elements[i]);
			if (validator.isEmpty(elements[i].value)) {
				noOfErrors++;
				displayErrorString = displayErrorString
						+ "<tr class=\"FormErrorTips\"><td>" + noOfErrors
						+ ".</td><td>" + localizedStrings.msgEmailIdBlank
						+ "</td></tr>";
				addErrorHighlight(elements[i]);
				validate = "false";

			} else if (!validator.isEmail(elements[i].value)) {
				noOfErrors++;
				displayErrorString = displayErrorString
						+ "<tr class=\"FormErrorTips\"><td>" + noOfErrors
						+ ".</td><td>" + localizedStrings.msgValidEmailId
						+ "</td></tr>";
				addErrorHighlight(elements[i]);
				validate = "false";
				elements[i].value = "";

			}

		}

		if (elements[i].id.indexOf(":pwdId") != -1) {
			removeErrorHighlight(elements[i]);
			if (validator.isEmpty(elements[i].value)) {
				noOfErrors++;
				displayErrorString = displayErrorString
						+ "<tr class=\"FormErrorTips\"><td>" + noOfErrors
						+ ".</td><td>" + localizedStrings.msgPasswordBlank
						+ "</td></tr>";
				addErrorHighlight(elements[i]);
				validate = "false";

			} else if (elements[i].value.length < 6) {

				noOfErrors++;
				displayErrorString = displayErrorString
						+ "<tr class=\"FormErrorTips\"><td>" + noOfErrors
						+ ".</td><td>" + localizedStrings.msgPasswordCharacter
						+ "</td></tr>";
				addErrorHighlight(elements[i]);
				validate = "false";

			}

			else if (elements[i].value.indexOf(" ") != -1) {

				noOfErrors++;
				displayErrorString = displayErrorString
						+ "<tr class=\"FormErrorTips\"><td>" + noOfErrors
						+ ".</td><td>" + localizedStrings.msgPassWithoutSpace
						+ "</td></tr>";
				addErrorHighlight(elements[i]);
				validate = "false";

			}

		}

		if (elements[i].id.indexOf(":securityQuestionId") != -1) {
			if (validator.isEmpty(elements[i].value)) {
				message = localizedStrings.msgAnsCannotBeBlank;

			}
		}

		if (elements[i].id.indexOf(":hintAnswerId") != -1) {
			if (validator.isEmpty(elements[i].value)) {
				message = localizedStrings.msgAnsCannotBeBlank;

			}
		}

		if (elements[i].id.indexOf(":firstNameId") != -1) {
			removeErrorHighlight(elements[i]);
			if (validator.isEmpty(elements[i].value)) {
				noOfErrors++;
				displayErrorString = displayErrorString
						+ "<tr class=\"FormErrorTips\"><td>" + noOfErrors
						+ ".</td><td>" + localizedStrings.msgFirstNameBlank
						+ "</td></tr>";
				addErrorHighlight(elements[i]);
				validate = "false";

			} else if (!validator.isString(elements[i].value)) {

				noOfErrors++;
				displayErrorString = displayErrorString
						+ "<tr class=\"FormErrorTips\"><td>" + noOfErrors
						+ ".</td><td>" + localizedStrings.msgValidFirstName
						+ "</td></tr>";
				addErrorHighlight(elements[i]);
				validate = "false";

				elements[i].value = "";

			}
		}

		if (elements[i].id.indexOf(":lastNameId") != -1) {
			removeErrorHighlight(elements[i]);
			if (validator.isEmpty(elements[i].value)) {
				noOfErrors++;
				displayErrorString = displayErrorString
						+ "<tr class=\"FormErrorTips\"><td>" + noOfErrors
						+ ".</td><td>" + localizedStrings.msgLastNameBlank
						+ "</td></tr>";
				addErrorHighlight(elements[i]);
				validate = "false";

			} else if (!validator.isString(elements[i].value)) {

				noOfErrors++;
				displayErrorString = displayErrorString
						+ "<tr class=\"FormErrorTips\"><td>" + noOfErrors
						+ ".</td><td>" + localizedStrings.msgvalidLastName
						+ "</td></tr>";
				addErrorHighlight(elements[i]);
				validate = "false";
				elements[i].value = "";

			}
		}

		/*if (elements[i].id.indexOf(":monthOptionId") != -1) {
			month = elements[i].value;
			removeErrorHighlight(elements[i]);
			if (validator.isEmpty(month)) {
				message = localizedStrings.msgMonthBlank
				noOfErrors++;
				displayErrorString = displayErrorString
						+ "<tr class=\"FormErrorTips\"><td>" + noOfErrors
						+ ".</td><td>" + localizedStrings.msgMonthBlank
						+ "</td></tr>";
				addErrorHighlight(elements[i]);
				validate = "false";

			}

		}
		if (elements[i].id.indexOf(":dateOptionId") != -1) {

			date = elements[i].value;
			removeErrorHighlight(elements[i]);
			if (validator.isEmpty(date)) {
				noOfErrors++;
				displayErrorString = displayErrorString
						+ "<tr class=\"FormErrorTips\"><td>" + noOfErrors
						+ ".</td><td>" + localizedStrings.msgDateBlank
						+ "</td></tr>";
				addErrorHighlight(elements[i]);
				validate = "false";

			}

		}

		if (elements[i].id.indexOf(":yearOptionId") != -1) {
			year = elements[i].value;
			removeErrorHighlight(elements[i]);
			if (validator.isEmpty(year)) {
				message = localizedStrings.msgYearBlank;
				noOfErrors++;
				displayErrorString = displayErrorString
						+ "<tr class=\"FormErrorTips\"><td>" + noOfErrors
						+ ".</td><td>" + localizedStrings.msgYearBlank
						+ "</td></tr>";
				addErrorHighlight(elements[i]);
				validate = "false";

			}
		}*/
		if (elements[i].id.indexOf(":dateOptionId") != -1) {
					date = elements[i].value;
					removeErrorHighlight(elements[i]);
					if (validator.isEmpty(date)) {
						noOfErrors++;
						displayErrorString = displayErrorString
								+ "<tr class=\"FormErrorTips\"><td>" + noOfErrors
								+ ".</td><td>" + localizedStrings.msgDateBlank
								+ "</td></tr>";
						addErrorHighlight(elements[i]);
						validate = "false";

					}
				}
		if (month != null && date != null && year != null) {
			var input = date + "-" + month + "-" + year;

			if (!validator.isDate(input)) {
				message = localizedStrings.msgValidDOB;
			}
		}

		if (elements[i].id.indexOf(":mobileNoId") != -1) {
			removeErrorHighlight(elements[i]);
			if (validator.isEmpty(elements[i].value)) {
				noOfErrors++;
				displayErrorString = displayErrorString
						+ "<tr class=\"FormErrorTips\"><td>" + noOfErrors
						+ ".</td><td>" + localizedStrings.msgMobileNoBlank
						+ "</td></tr>";
				addErrorHighlight(elements[i]);
				validate = "false";
				elements[i].value = "";

			} else if (!validator.isPhone(elements[i].value)) {
				noOfErrors++;
				displayErrorString = displayErrorString
						+ "<tr class=\"FormErrorTips\"><td>" + noOfErrors
						+ ".</td><td>" + localizedStrings.msgValidMobileNo
						+ "</td></tr>";
				addErrorHighlight(elements[i]);
				validate = "false";
				elements[i].value = "";

			}
			/*
			 * if(!isAnyContactNoFilled){ isAnyContactNoFilled = true; }
			 */
		}

		if (elements[i].id.indexOf(":landLineNoId") != -1) {
			removeErrorHighlight(elements[i]);
			if (!validator.isEmpty(elements[i].value)) {
				removeErrorHighlight(elements[i]);
				if (!validator.isPhone(elements[i].value)) {
					noOfErrors++;
					displayErrorString = displayErrorString
							+ "<tr class=\"FormErrorTips\"><td>" + noOfErrors
							+ ".</td><td>"
							+ localizedStrings.msgValidLandLineNo
							+ "</td></tr>";
					addErrorHighlight(elements[i]);
					validate = "false";
					elements[i].value = "";

				}
				/*
				 * if(!isAnyContactNoFilled){ isAnyContactNoFilled = true; }
				 */
			}
		}

		if (elements[i].id.indexOf(":faxId") != -1) {
			removeErrorHighlight(elements[i]);
			if (elements[i].value != ""
					&& !validator.isNumberOnly(elements[i].value)) {
				// message="Please Enter valid Fax Number";
				noOfErrors++;
				displayErrorString = displayErrorString
						+ "<tr class=\"FormErrorTips\"><td>" + noOfErrors
						+ ".</td><td>" + localizedStrings.msgValidFaxNo
						+ "</td></tr>";
				addErrorHighlight(elements[i]);
				validate = "false";
				elements[i].value = "";

			}
		}
		if (elements[i].id.indexOf(":address1Id") != -1) {
			removeErrorHighlight(elements[i]);
			if (validator.isEmpty(elements[i].value)) {
				noOfErrors++;
				displayErrorString = displayErrorString
						+ "<tr class=\"FormErrorTips\"><td>" + noOfErrors
						+ ".</td><td>" + localizedStrings.msgAddressBlank
						+ "</td></tr>";
				addErrorHighlight(elements[i]);
				validate = "false";

			}
		}

		if (elements[i].id.indexOf(":cityId") != -1) {
			removeErrorHighlight(elements[i]);
			if (validator.isEmpty(elements[i].value)) {
				noOfErrors++;
				displayErrorString = displayErrorString
						+ "<tr class=\"FormErrorTips\"><td>" + noOfErrors
						+ ".</td><td>" + localizedStrings.msgCityBlank
						+ "</td></tr>";
				addErrorHighlight(elements[i]);
				validate = "false";

			} else if (!validator.isStringAllowSpace(elements[i].value)) {
				noOfErrors++;
				displayErrorString = displayErrorString
						+ "<tr class=\"FormErrorTips\"><td>" + noOfErrors
						+ ".</td><td>" + localizedStrings.msgValidCity
						+ "</td></tr>";
				addErrorHighlight(elements[i]);
				validate = "false";
				elements[i].value = "";

			}
		}
		if (elements[i].value != "" && elements[i].id.indexOf(":stateId") != -1) {
			removeErrorHighlight(elements[i]);
			if (!validator.isStringAllowSpace(elements[i].value)) {
				noOfErrors++;
				displayErrorString = displayErrorString
						+ "<tr class=\"FormErrorTips\"><td>" + noOfErrors
						+ ".</td><td>" + localizedStrings.msgValidState
						+ "</td></tr>";
				addErrorHighlight(elements[i]);
				validate = "false";
				elements[i].value = "";

			}

		}

		if (elements[i].id.indexOf(":pinCodeId") != -1) {
			removeErrorHighlight(elements[i]);
			if (validator.isEmpty(elements[i].value)) {
				message = localizedStrings.msgPinCodeBlank;
				noOfErrors++;
				displayErrorString = displayErrorString
						+ "<tr class=\"FormErrorTips\"><td>" + noOfErrors
						+ ".</td><td>" + localizedStrings.msgPinCodeBlank
						+ "</td></tr>";
				addErrorHighlight(elements[i]);
				validate = "false";

			} else if (!validator.isNumberOnly(elements[i].value)) {
				message = localizedStrings.msgValidPinCode;
				noOfErrors++;
				displayErrorString = displayErrorString
						+ "<tr class=\"FormErrorTips\"><td>" + noOfErrors
						+ ".</td><td>" + localizedStrings.msgValidPinCode
						+ "</td></tr>";
				addErrorHighlight(elements[i]);
				validate = "false";
				elements[i].value = "";

			}
		}

		if (elements[i].id.indexOf(":checkbox2") != -1) {
			removeErrorHighlight(elements[i]);
			if (!elements[i].checked) {
				message = localizedStrings.msgCheckBoxBlank;
				noOfErrors++;
				displayErrorString = displayErrorString
						+ "<tr class=\"FormErrorTips\"><td>" + noOfErrors
						+ ".</td><td>" + localizedStrings.msgCheckBoxBlank
						+ "</td></tr>";
				addErrorHighlight(elements[i]);
				validate = "false";

			}
		}

	}
	if (validate == "false") {
		var errorMessageDiv = obj$("errorMessage");
		var errorString = displayHeaderString + noOfErrors
				+ localizedStrings.msgErrorsFoundInForm + "</td></tr>"
				+ displayErrorString + "</table>";
		errorMessageDiv.innerHTML = errorString;
		errorMessageDiv.style.display = "block";
		errorMessageDiv.style.visibility = "visible";
		return false;
	}
	return true;

}
function createCal() {
	createZapatecCalender('registration:searchPageBody:personal:dateOptionId', true)
}

function minusDays(date,days){
	var newDate = new Date();
	newDate.setTime(date.getTime() - (days * 24 * 60 * 60 * 1000));
	return newDate;
}