var sAppRootPath = "/JABBERMONKEY";
function updateHiddenField(sID1,sID2)
{
	var objTxt = document.getElementById(sID1);
	var objHdn = document.getElementById(sID2);
	objHdn.value = objTxt.value;
}


/*********************************************************************************/

var sMonthNames = new Array("January","February","March","April","May","June","July","August","September","October","November","December");
var sWeekNames  = new Array("S","M","T","W","T","F","S");

function setDate(sCtrlID,str_Date)
{
	var dt= new Date(str_Date);
	var txtDate = document.getElementById(sCtrlID + "_txtDate");
	var hdnDate = document.getElementById(sCtrlID + "_hdnValue");
	var sDt = (dt.getMonth()<9?"0":"") + (dt.getMonth()+1) + "/" + (dt.getDate()<10?"0":"") + dt.getDate() + "/" + dt.getFullYear();
	txtDate.value = sDt;
	hdnDate.value = sDt;
	var objLayer = document.getElementById(sCtrlID + "_pnlCal");
	if(objLayer) objLayer.document.innerHTML="";
	closeCalender(sCtrlID);

	return false;
}

/*********************************************************************************/
function DivSetVisible(sId,state)
{
	var DivRef = document.getElementById(sId + '_pnlCal');
	var IfrRef = document.getElementById(sId + '_ifrmCal');
	if(DivRef && IfrRef)//Added to prevent JS errors
	{
		if(state)
		{		
				DivRef.style.position = "absolute";
				IfrRef.style.position = "absolute";
				DivRef.style.visibility = "visible";
				DivRef.style.display = "block";
				IfrRef.style.width = DivRef.offsetWidth;
				IfrRef.style.height = DivRef.offsetHeight;
				IfrRef.style.top = DivRef.style.top;
				IfrRef.style.left = DivRef.style.left;
				IfrRef.style.zIndex = DivRef.style.zIndex - 1;
				IfrRef.style.display = "block";
		}
		else
		{
				DivRef.style.visibility = "hidden";
				DivRef.style.display = "none";
				IfrRef.style.display = "none";
		}
	}
	return false;
}


function closeCalender(sCtrlID)
{
	var obj = document.getElementById(sCtrlID + "_pnlCal");
	if(obj)
	{
		obj.innerHTML = "";
		DivSetVisible(sCtrlID,0);
	}
}


function showCalender(sCtrlID,sDate)
{
	//return false;
	//
	var objtxt = document.getElementById(sCtrlID + "_txtDate");
	if(objtxt)
	{
		if(objtxt.disabled) return false;
	}
	var obj = document.getElementById(sCtrlID + "_pnlCal");
	if(obj)
	{
		var oSelDate;		
		if(!sDate)	oSelDate = new Date();
		else		oSelDate = new Date(sDate);
		
		var sText = "<table class='calHeading' background='" + sAppRootPath + "/grd_topfill.jpg' cellpadding=1 cellspacing=0 ><tr><td>";
		var sOnMonthClick = "javascript:return showCalender('" + sCtrlID + "',new Date(" + oSelDate.getFullYear() + ",this.selectedIndex,1));";
		
		sText += "&nbsp;&nbsp;<select style='width:90px' class='calcombobox' onchange=\"" + sOnMonthClick + "\" >";
		for(var i=0;i<sMonthNames.length;i++)
		{
			sText += "<option " +  (i==oSelDate.getMonth()?"selected":"")  +  ">" + sMonthNames[i] + "</option>";
		}
		sText += "</select>";
		
		var sOnYearClick = "javascript:return showCalender('" + sCtrlID + "',new Date(parseInt(this.options[this.selectedIndex].text)," + oSelDate.getMonth() + ",1));";
		sText += "</td><td><select class='calcombobox'  onchange=\"" + sOnYearClick + "\" >";
		
		for(var i=-5;i<5;i++)
		{
			sText += "<option " +  (i==0?"selected":"")  +  ">" + (oSelDate.getFullYear() + i) + "</option>";
		}
		sText += "</select>";
		sText += "</td><td><a href='#' onclick='javascript:closeCalender(\"" + sCtrlID + "\");return false;'><img alt='close' border='0' src='" + sAppRootPath + "/close_small.jpg' width='16' height='16' ></a></td></tr></table>";	
			
		var n_weekstart		= 0; 
		var oCurDate = new Date(oSelDate);	
		oCurDate.setDate(1);
		oCurDate.setDate(1-(7+oCurDate.getDay() - n_weekstart)%7);
		
		sText += "<table class='calTable' cellspacing=1 cellpadding=1 >";
		
		sText += "\n" + "<tr>";
		for(var i=0; i<7; i++)
		{
			sText += "\n" + "<td class='dayHeading' align='center'>" + sWeekNames[(n_weekstart+i)%7] + "</td>"		
		}
		sText += "\n" + "	</tr>";
		
		while (oCurDate.getMonth() <= oSelDate.getMonth() ) 
		{
			sText += "\n" + "	<tr>"
			for(var i=0; i<7; i++)
			{
					var bkClass,sTextColor;
					
					if (oCurDate.getDate() == oSelDate.getDate() && oCurDate.getMonth() == oSelDate.getMonth())
					{			
						bkClass		= "daySel"
						sTextColor	= "#006400"
					}				
					else if (oCurDate.getDay() == 0 || oCurDate.getDay() == 6)
					{
						bkClass		= "dayWeekend"
						sTextColor	= "#b22222"
					}
					else if (oCurDate.getMonth() == oSelDate.getMonth())
					{
						bkClass		= "dayActive"
						sTextColor	= "#00008b"
					}
					else
					{
						bkClass		= "dayActive"
						sTextColor	= "#afcacf"
					}
			
					var blLink = true;
					/*if(dt_min_date!=null)
					{	if(oCurDate < dt_min_date) blLink = false;
					}
					if(dt_max_date!=null)
					{	if(oCurDate > dt_max_date) blLink = false;
					}*/
					if(blLink)	
					{
						sText += "	<td class='" + bkClass + "' onclick='return  setDate(\"" + sCtrlID + "\",\"" + dt2dtstr(oCurDate) + "\",\"\");'>";
						//sText += "	<td class='" + bkClass + "' onclick='alert();' onmouseover='javascript:this.className=\"dayCurSel\";' onmouseout='javascript:this.className=\"" + bkClass + "\";'>";
						sText += "<font color='" + sTextColor + "'>" + oCurDate.getDate() + "</font>"
					}
					else
					{		
						sText += "	<td class='" + bkClass + "'>";
						sText += oCurDate.getDate();
					}
					
					sText += "</td>\n";
					oCurDate.setDate(oCurDate.getDate()+1);
			}
			sText += "\n" + "	</tr>"	
		}
		sText += "</table>";
		
		obj.innerHTML = sText;
		DivSetVisible(sCtrlID,1);
	}
}

/*********************************************************************************/
function dt2dtstr (dt_sel_date) 
{
	return (new String (
			((dt_sel_date.getMonth()+1)+"/"+dt_sel_date.getDate()+"/"+dt_sel_date.getFullYear())));
}
/*********************************************************************************/
function ShowMessage(sID)
{
	var width  = 300;
	var height = 200;
	var dlgParms = "dialogWidth:"+width+"px;dialogHeight:"+height+"px;unadorned:yes;center:yes;status:no;scroll:no;help:no;";
	var w  = window.showModalDialog(sAppRootPath + "/aspx/wfrmMessages.aspx?mid="+ sID,null,dlgParms);
	return false;
}
/*********************************************************************************/
function Confirm(sID)
{
	var width  = 300;
	var height = 200;
	var dlgParms = "dialogWidth:"+width+"px;dialogHeight:"+height+"px;unadorned:yes;center:yes;status:no;scroll:no;help:no;";
	var retVal  = window.showModalDialog(sAppRootPath + "/aspx/wfrmMessages.aspx?&type=q&mid="+ sID,null,dlgParms);
	return retVal;
}
/*********************************************************************************/+
function ValidateForMandatoryFields()
{
	if(!window.mandElements) return true;
	for(var i=0;i<window.mandElements.length;i++)
	{
		var obj = window.mandElements[i];
		if((obj.type=="select-one") && (!obj.disabled) && (!obj.readonly) )
		{
			if(obj.selectedIndex<=0)
			{
				ShowMessage(400);
				obj.focus();
				return false;
			}
		}
		if((obj.value==null ||obj.value=="") && (!obj.disabled) && (!obj.readonly) )
		{
			ShowMessage(400);
			obj.focus();
			return false;
		}
	}
	return true;
}
/*********************************************************************************/
// To check value entered is alphanumeric or not
function AlphaNumericCheck(id) {
    var val = id.value;
    if (val!="")
    {
        var regex = new RegExp(/^[a-zA-Z0-9!?.,() ]+$/);
        if ((val.match(regex))) {
            return true;
        }
        else {
            return false;
        }
    }
    else {
        return true;
    }
}
//// To check value entered is alphanumeric or not Using key code
//function AlphaNumericCheck1(id) {
//    if ((event.keyCode > 47 && event.keyCode < 58) || (event.keyCode > 64 && event.keyCode < 91) || (event.keyCode > 96 && event.keyCode < 123) || (event.keyCode == 32) || (event.keyCode == 33) || (event.keyCode == 34) || (event.keyCode == 39) || (event.keyCode == 40) || (event.keyCode == 41) || (event.keyCode == 46) || (event.keyCode == 63)) {
//        return true;
//    }
//    else {
//        return false;
//    }
//}
//To check EmailId  entered is valid ot not
function EmailValidation(id) {
    
    var val = id; //.value;
    var regex = new RegExp(/^[a-zA-Z][\w\.-]*[a-zA-Z0-9]@[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]$/);
    if ((val.match(regex))) {
        return true;
    }
    else {
        return false;
    }
}
//To check Field is Empty ot not
function isEmpty(id) {
    //var val = (id.value).trim();
    var val = Trim(id.value);
    if (val == "") {
        return true;
    }
    else {
        return false;
    }
}
//To check Both enterd passwords are matching or not 
function PasswordEntryMatchCheck(password, confirmPassword) {
    if (confirmPassword.value != password.value) {
        return false;
    }
    //            else if (confirmPassword.value.length < 8) {
    //                confirmPassword.value = "";
    //                password.value = "";
    //                return false;
    //            }
    else {
        return true;
    }
}

function ConcatenateDate(day, month, year) {
    var mySelectedDay = day.options[day.selectedIndex].value
    var mySelectedMonth = month.options[month.selectedIndex].value
    var mySelectedYear = year.options[year.selectedIndex].value
    var myFullDateString = mySelectedDay + "-" + mySelectedMonth + "-" + mySelectedYear;
    return myFullDateString;
}
function DateCompare(startDate, endDate) {
    if (Date.parse(startDate) > Date.parse(endDate)) {
        return false;
    }
    else {
        return true;
    }
}

/************************************** Add By Vikas */
function Trim(input) {
    var lre = /^\s*/;
    var rre = /\s*$/;
    input = input.replace(lre, "");
    input = input.replace(rre, "");
    return input;
}
//To Find X Position of the Object
function findPosX(obj) {
    var curleft = 0;
    if (obj.offsetParent)
        while (1) {
        curleft += obj.offsetLeft;
        if (!obj.offsetParent)
            break;
        obj = obj.offsetParent;
    }
    else if (obj.x)
        curleft += obj.x;
    return curleft;
}
//To Find Y Position of the Object
function findPosY(obj) {
    var curtop = 0;
    if (obj.offsetParent)
        while (1) {
        curtop += obj.offsetTop;
        if (!obj.offsetParent)
            break;
        obj = obj.offsetParent;
    }
    else if (obj.y)
        curtop += obj.y;
    return curtop;
}
//Added By Ramesh
/* start Code */
//function jsOpenWindowChat(UserId, FriendId, UserImage, FriendName) {
//    var temp = new Array();
//    var sFriendName;
//    temp = FriendName.split(' ');
//    if (temp.length > 1)
//        sFriendName = temp[0] + '' + temp[1].substring(0, 1) + '.';
//    else
//        sFriendName = temp[0];

//    var popUp = UserId + FriendId;
//    var win = window.open("../Chat/Chat.aspx?ToUserId=" + UserId + "&UserIcon=" + UserImage + "&UserName=" + sFriendName + "&FromUserID=" + '<%= Userid %>', popUp, 'height=400,width=600');
//}

function jsOpenWindowChat(UserId, FriendId, UserImage, FriendName) {
    var temp = new Array();
    var sFriendName;
    temp = FriendName.split(' ');
    if (temp.length > 1)
        sFriendName = temp[0] + '' + temp[1].substring(0, 1) + '.';
    else
        sFriendName = temp[0];

    var popUp = UserId.toString() + "|" + FriendId.toString();
    //var win = window.open("../Chat/Chat.aspx?ToUserId=" + UserId + "&UserIcon=" + UserImage + "&UserName=" + sFriendName + "&FromUserID=" + '<%= Userid %>', popUp, 'height=400,width=600');
    var sUrl = "../Chat/Chat.aspx?FromUserId=" + UserId + "&UserName=" + sFriendName.toString().replace(" ", "%20") + "&UserIcon=" + UserImage + "&ToUserId=" + FriendId;
    CreateDiv(popUp, sUrl);
}

function showCommonFloatDivForImage(UserID, name, control, FriendId, UserImage, FriendName, isActive, manageWidth, manageHeight, varID1, varID2, QCount, AnsCount) {
    
    if (FriendId == UserID)
    { }
    else {
        
        //Set for Firefox and IE 8 & Safari
        version = parseFloat(navigator.appVersion.split("MSIE")[1]);
        if (version != 7) {
            document.getElementById('FriendMail').style.marginTop = '-17px';
            document.getElementById('FriendChat').style.marginTop = '-17px';
        }
        if(document.getElementById('FriendvideoChat'))
        document.getElementById('FriendvideoChat').style.display = "none";
        var curleft, curtop;        
        if (control.offsetParent) {
            for (curleft = 0, curtop = 0; control; control = control.offsetParent) {
                curleft += control.offsetLeft;
                curtop += control.offsetTop;
            }
        }
//        if (control.offsetParent) {
//            curleft = control.offsetLeft
//            curtop = control.offsetTop
        //        }
        
        if (!e) {
            var e = window.event || arguments.callee.caller.arguments[0];
        }
        var scrolledV = scrollVPopUp();
        var scrolledH = (navigator.appName == 'Netscape') ? document.body.scrollLeft : document.body.scrollLeft;
        tempX = (navigator.appName == 'Netscape') ? e.clientX : event.clientX;
        tempY = (navigator.appName == 'Netscape') ? e.clientY : event.clientY;
        //document.getElementById(name).style.left = (curleft + control.width + manageWidth) + 'px';

        document.getElementById(name).style.left = (curleft + manageWidth) + 'px';
        
            document.getElementById(name).style.top = (curtop + manageHeight) + 'px';
            document.getElementById(name).style.display = "block";
            //if ((document.getElementById('FriendChat') != null) && (document.getElementById('FriendvideoChat') != null))
        

        if (isActive == "True") {
            if(document.getElementById('FriendChat')!=null)
                document.getElementById('FriendChat').style.display = "block";
            if (document.getElementById('divFriendChat') != null) {
                document.getElementById('divFriendChat').style.display = "block";
                document.getElementById('FriendChat').href = 'javascript:jsOpenWindowChat(' + UserID + ' ,' + FriendId + ',"' + UserImage + '","' + FriendName + '")';
            }
            
        }
        else {
            if (document.getElementById('FriendChat') != null) {
                document.getElementById('FriendChat').style.display = "none";
            }
            if (document.getElementById('divFriendChat') != null) {
                document.getElementById('divFriendChat').style.display = "none";
            }
            //document.getElementById('FriendvideoChat').style.display = "none";
        }

        if (varID1 == "RecommendedFriend") {
            if (document.getElementById('FriendRequest'))
                document.getElementById('FriendRequest').style.display = "block";
            if (document.getElementById('FriendChat')) {
                if (document.getElementById('divFriendChat') != null) {
                    document.getElementById('divFriendChat').style.display = "none";
                }
                if (document.getElementById('FriendChat') != null) {
                    document.getElementById('FriendChat').style.display = "none";
                    document.getElementById('divFriendChat').style.display = "none";
                }
            }
//            if (document.getElementById('FriendvideoChat'))
//                document.getElementById('FriendvideoChat').style.display = "none";
            if (document.getElementById('FriendMail')) {
                document.getElementById('divFriendEmail').style.display = "none"; 
                document.getElementById('FriendMail').style.display = "none";
            }
            if(document.getElementById('FriendRequest')!=null)
            document.getElementById('FriendRequest').href = "../user/MakeNewFriend.aspx?ToUserId=" + FriendId;
        }
        else {
             
            if(document.getElementById('FriendRequest'))
                document.getElementById('FriendRequest').style.display = "none";
            if (document.getElementById('FriendMail') != null)
        document.getElementById('FriendMail').style.display = "block";
        if (document.getElementById('divFriendEmail') != null)
        document.getElementById('divFriendEmail').style.display = "block"; 
        }
        document.getElementById('Question').href = "CreatedQuestionsAll.aspx?ToUserId=" + FriendId;
        document.getElementById('Question').innerHTML = "Questions(" + QCount + ")";
        document.getElementById('Answer').href = " AnsweredQuestionsAll.aspx?ToUserId=" + FriendId;
        document.getElementById('Answer').innerHTML = "Answers(" + AnsCount + ")";
        document.getElementById('FriendMail').href = "../user/InternalMessaging.aspx?FriendMail=1&FriendID=" + FriendId;
        
    }
}

//Add by Rajendra - Show user stats at List view page
function ShowUserStatsAtListViewPage(UserID, name, control, FriendId, UserImage, FriendName, isActive, isFriend, manageWidth, manageHeight) {
     if (FriendId != UserID) {
         //document.getElementById('DivContent').style.display = "block";
        document.getElementById('FriendvideoChat').style.display = "none";
        var curleft, curtop;
        if (control.offsetParent) {
            for (curleft = 0, curtop = 0; control; control = control.offsetParent) {
                curleft += control.offsetLeft;
                curtop += control.offsetTop;
            }
        }
        
        if (!e) {
            var e = window.event || arguments.callee.caller.arguments[0];
        }
        var scrolledV = scrollVPopUp();
        var scrolledH = (navigator.appName == 'Netscape') ? document.body.scrollLeft : document.body.scrollLeft;
        tempX = (navigator.appName == 'Netscape') ? e.clientX : event.clientX;
        tempY = (navigator.appName == 'Netscape') ? e.clientY : event.clientY;
        document.getElementById(name).style.left = (curleft + manageWidth) + 'px';
        document.getElementById(name).style.top = (curtop + manageHeight) + 'px';
        document.getElementById(name).style.display = "block";
        if (isActive == 1 && isFriend == 1) {
            document.getElementById('FriendChat').style.display = "block";
            document.getElementById('divFriendChat').style.display = "block";
            
            document.getElementById('FriendChat').href = 'javascript:jsOpenWindowChat(' + FriendId + ',"' + UserImage + '","' + FriendName + '")';
        }
        else {
            document.getElementById('FriendChat').style.display = "none";
            document.getElementById('divFriendChat').style.display = "none";
        }
        
        document.getElementById('Question').href = "../user/CreatedQuestionsAll.aspx?ToUserId=" + FriendId;
        document.getElementById('Answer').href = "../user/AnsweredQuestionsAll.aspx?ToUserId=" + FriendId;
        document.getElementById('FriendMail').href = "../user/InternalMessaging.aspx?FriendMail=1&FriendID=" + FriendId;
    }
}

function scrollVPopUp() {
    var scrolledV;
    if (window.pageYOffset) {
        scrolledV = window.pageYOffset;
    }
    else if (document.documentElement && document.documentElement.scrollTop) {
        scrolledV = document.documentElement.scrollTop;
    }
    else if (document.body) {
        scrolledV = document.body.scrollTop;
    }
    return scrolledV;
}
function OpenWindowChatCommon(UserID,FriendId, UserImage, FriendName) {
    var popup = UserID + "|" + FriendId.toString();
    var sUrl = "../Chat/Chat.aspx?FromUserId=" + UserID + "&UserName=" + FriendName.toString().replace(" ", "%20") + "&UserIcon=" + UserImage + "&ToUserId=" + FriendId;
    CreateDiv(popup, sUrl);
}
function closeDiv(divObject) {
    document.getElementById(divObject).style.display = "none";
}
function ShowDiv(divObject) {
    document.getElementById(divObject).style.display = "block";
}
function MouseOut() {
    setTimeout("closeDiv('DivContent');", 10000);
}
function showFloatDivCommon(name, manageWidth, manageHeight, varID1, varID5)
 {
     if (!e)
    {
        var e = window.event || arguments.callee.caller.arguments[0];
    }
    var scrolledV = scrollVPopUp();
    var scrolledH = (navigator.appName == 'Netscape') ? document.body.scrollLeft : document.body.scrollLeft;
    tempX = (navigator.appName == 'Netscape') ? e.clientX : event.clientX;
    tempY = (navigator.appName == 'Netscape') ? e.clientY : event.clientY;
    if (varID5 == 1) {
        document.getElementById(name).style.left = (tempX + scrolledH + manageWidth) + 'px';
        document.getElementById(name).style.top = (tempY + scrolledV + manageHeight) + 'px';
        document.getElementById(name).style.display = "block";
    }
    else if (varID5 == 2) {
    document.getElementById(name).style.left = varID1[0] - 10 + 'px';
    document.getElementById(name).style.top = varID1[1] + 20 + 'px';
    document.getElementById(name).style.display = "block";      
    }
}
function findPos(obj) {
    var curleft = curtop = 0;
    if (obj.offsetParent) {
        curleft = obj.offsetLeft
        curtop = obj.offsetTop
        while (obj = obj.offsetParent) {
            curleft += obj.offsetLeft
            curtop += obj.offsetTop
        }
    }
    return [curleft, curtop];
}
function SearchFriendsCommon(clt, SearchList, ListFriends, divControl) {    
    var x, list, SearchLst;
    //--Get list Elements
    SearchLst = SearchList ;
    list = ListFriends ;
    //Clear Search Reasult
    SearchLst.length = 0;
    //if text is blank
    if (clt.value == '') 
    {
        document.getElementById(divControl).style.display = "none";
        SearchList.focus();
        return;
    }
    //--Logic for more than one user selection
    var txtSearchPattern;
    if (clt.value != '')
     {
        var arrVal = clt.value.split(';');
        if (arrVal.length > 1) {
            txtSearchPattern = arrVal[arrVal.length - 1];
        }
        else {
            txtSearchPattern = arrVal[0];
        }
    }
    if (txtSearchPattern == '') 
    {
        document.getElementById(divControl).style.display = "none";
        SearchList.focus();
        return;
    }    
    for (var x = 0; x < list.options.length; x++) 
    {
        var substringItems = list.options[x].text.substring(0, txtSearchPattern.length);
        if (txtSearchPattern.toLowerCase() == substringItems.toLowerCase())
        {
            var opt = document.createElement("option");
            SearchLst.options.add(opt);
            // Assign text and value to Option object
            opt.text = list.options[x].text;
            clt.focus();
        }
    }
    if (SearchLst.options.length == 0) {
        document.getElementById(divControl).style.display = "none";
        clt.focus();
    }
}
function GetTextValueCommon(SearchList, ListFriends, divControl)
 {
    var SearchLst, txtSearch;
    SearchLst = SearchList;
    txtSearch = ListFriends;
    if (txtSearch.value.lastIndexOf(';') == -1) 
    {
        txtSearch.value = '';
    }
    else 
    {
        txtSearch.value = txtSearch.value.substring(0, txtSearch.value.lastIndexOf(';') + 1);
    }
    for (var i = 0; i < SearchLst.options.length; i++)
    {
        if (SearchLst[i].selected == true)
         {
            txtSearch.value = txtSearch.value + SearchLst.options[i].text + ';';
            SearchLst[i].selected == false;
            SearchLst.length = 0;
            document.getElementById(divControl).style.display = "none";
            txtSearch.focus();
            return;
        }
    }
}
function CallGetTextValue()
{
    if (event.keyCode == 13)
     {
        GetTextValue();
    }
}

function isDate(dateStr) {
    var datePat = /^(\d{1,2})(\/|-)(\d{1,2})(\/|-)(\d{4})$/;
    var matchArray = dateStr.match(datePat); // is the format ok?

    if (matchArray == null) {
        //alert("Please enter date as either mm/dd/yyyy or mm-dd-yyyy.");
        return false;
    }

    month = matchArray[1]; // p@rse date into variables
    day = matchArray[3];
    year = matchArray[5];

    if (month < 1 || month > 12) { // check month range
        //alert("Month must be between 1 and 12.");
        return false;
    }

    if (day < 1 || day > 31) {
        //alert("Day must be between 1 and 31.");
        return false;
    }

    if ((month == 4 || month == 6 || month == 9 || month == 11) && day == 31) {
        //alert("Month " + month + " doesn`t have 31 days!")
        return false;
    }

    if (month == 2) { // check for february 29th
        var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
        if (day > 29 || (day == 29 && !isleap)) {
            //alert("February " + year + " doesn`t have " + day + " days!");
            return false;
        }
    }
    return true; // date is valid
}      
/* End Code */




