        function getHTTPObject() 
        {
            var xmlhttp;
            if (window.XMLHttpRequest) 
            {
                xmlhttp = new XMLHttpRequest();
            }
            else if (window.ActiveXObject) 
            {
                xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
            }
            return xmlhttp;
        }

        function NewWindow(mypage,myname,w,h,scroll,pos)
        {
            if(pos=="center")
            {
                LeftPosition=(screen.width)?(screen.width-w)/2:100;
                TopPosition=(screen.height)?(screen.height-h)/2:100;}
                settings='height='+h+',width='+w+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+',resizable=no';
                win=window.open(mypage,myname,settings);
                if(win.focus){win.focus();
            }
        }

        var dtCh= "-";
        var minYear=1900;
        var maxYear=2100;
        function isInteger(s)
        {
            var i;
            for (i = 0; i < s.length; i++)
            {   
                // Check that current character is number.
                var c = s.charAt(i);
                if (((c < "0") || (c > "9"))) 
                    return false;
            }
            // All characters are numbers.
            return true;
        }
        function stripCharsInBag(s, bag)
        {
            var i;
            var returnString = "";
            // Search through string's characters one by one.
            // If character is not in bag, append to returnString.
            for (i = 0; i < s.length; i++)
            {
               var c = s.charAt(i);
               if (bag.indexOf(c) == -1) returnString += c;
            }
            return returnString;
        }
        function daysInFebruary (year)
        {
           // February has 29 days in any year evenly divisible by four,
           // EXCEPT for centurial years which are not also divisible by 400.
           return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 );
        }
        function DaysArray(n)
        {
           for (var i = 1; i <= n; i++)
           {
               this[i] = 31;
               if (i==4 || i==6 || i==9 || i==11) {this[i] = 30;}
               if (i==2) {this[i] = 29;}
           } 
           return this;
        }
      
        function isDate(dtStr)
        {
           var daysInMonth = DaysArray(12);
           var pos1=dtStr.indexOf(dtCh);
           var pos2=dtStr.indexOf(dtCh,pos1+1);
           var strDay=dtStr.substring(0,pos1);
           var strMonth=dtStr.substring(pos1+1,pos2);
           var strYear=dtStr.substring(pos2+1);
           strYr=strYear;
           if (strDay.charAt(0)=="0" && strDay.length>1) strDay=strDay.substring(1);
           if (strMonth.charAt(0)=="0" && strMonth.length>1) strMonth=strMonth.substring(1);
           for (var i = 1; i <= 3; i++)
           {
               if (strYr.charAt(0)=="0" && strYr.length>1) strYr=strYr.substring(1);
           }
           month=parseInt(strMonth);
           day=parseInt(strDay);
           year=parseInt(strYr);
           if (pos1==-1 || pos2==-1)
           {
               alert("The date format should be : mmm-dd-yyyy");
               return false;
           }
           if (strMonth.length<1 || month<1 || month>12)
           {
               alert("Please enter a valid month");
               return false;
           }
           if (strDay.length<1 || day<1 || day>31 || (month==2 && day>daysInFebruary(year)) || day > daysInMonth[month])
           {
               alert("Please enter a valid day");
               return false;
           }
           if (strYear.length != 4 || year==0 || year < minYear || year>maxYear)
           {
               alert("Please enter a valid 4 digit year between "+minYear+" and "+maxYear);
               return false;
           }
           if (dtStr.indexOf(dtCh,pos2+1)!=-1 || isInteger(stripCharsInBag(dtStr, dtCh))==false)
           {
               alert("Please enter a valid date");
               return false;
           }
           return true;
        }

        function checkTime(val)
        {
            re = /^(\d{1,2}):(\d{2}):(\d{2})?$/; 
            if(val.match(re)) 
            { 
                var hh1 = new Array;
                hh1 = val.split(":");
                var hour = hh1[0];
                var minute = hh1[1];
                var second = hh1[2];

                if ((hour > 23) || (hour < 0))
                {
                    alert("Please enter a valid hour between 0 to 23.");
                    return false;
                }
                if ((minute > 59) || (minute < 0))
                {
                    alert("Please enter a valid minute between 0 to 59.");
                    return false;
                }
                if ((second > 59) || (second < 0))
                {
                    alert("Please enter a valid second between 0 to 59.");
                    return false;
                }
                return true;
            }
            else
            {
                alert("The time format should be : HH:mm:ss");
                return false;
            }
            return true;
        }

        function checkEmailAddress(field)
        {
            if(field.value.indexOf('@')==0)
            {
                alert('Please enter a valid e-mail address.');
                field.focus();
                field.select();
                return false;
            }
            else
            {
                var goodEmail = field.value.match(/\b(^(\S+@).+((\.com)|(\.net)|(\.edu)|(\.mil)|(\.gov)|(\.org)|(\.aero)|(\..{2,2}))$)\b/gi);
                if (goodEmail)
                {
                    return true;
                }
                else
                {
                    alert('Please enter a valid e-mail address.');
                    field.focus();
                    field.select();
                    return false;
                }
           }     
        }

        function checkContact(s)
        {
            var cc = 0;
            for (i = 0; i < s.length; i++)
            {   
                var c = s.charAt(i);
                if(!((c >= "0") && (c <= "9") || (c == " ") || (c == ",") || (c == "/") || (c == "-")))
                    return false;
            }
            return true;
        }

        function trim(stringToTrim) 
        {
            return stringToTrim.replace(/^\s+|\s+$/g,"");
        }

        function checkContactCode(s)
        {
            var cc = 0;
            for (i = 0; i < s.length; i++)
            {   
                var c = s.charAt(i);
                if(!((c >= "0") && (c <= "9") || (c == "+") ))
                    return false;
            }
            return true;
        }

        function comparision(value1, value2)
        {
            if(value1 != "" && value2 != "")
            {
                var firstIndex1 = value1.indexOf ("-");
                var lastIndex1 = value1.lastIndexOf ("-");
                day1 = value1.substring (0, firstIndex1);
                month1 = value1.substring (firstIndex1+1, lastIndex1);
                year1 = value1.substring (lastIndex1+1, value1.length);

                var firstIndex2 = value2.indexOf ("-");
                var lastIndex2 = value2.lastIndexOf ("-");
                day2 = value2.substring (0, firstIndex2);
                month2 = value2.substring (firstIndex2+1, lastIndex2);
                year2 = value2.substring (lastIndex2+1, value2.length)

                var startdate = new Date(year1-0,month1-1,day1-0);
                var enddate = new Date(year2-0,month2-1,day2-0);

                if (startdate <= enddate)
                {
                    return true;
                }
                else
                {
                    alert('start date should be less than end date');
                    return false;
                }
            } 
            return true;
        }
