var popUp; 
var dtCh= "/";
var minYear=1900;
var maxYear=2100;

function setOptions(chosen) {
	var selbox = document.myform.opttwo;
	var selbox2 = document.myform.optthree;
	 
	selbox.options.length=0;
	selbox2.options.length=0;
	
	if (chosen==" ") {
		selbox.options[selbox.options.length] = new Option('Please select one of the options above first',' ');
		selbox2.options[selbox2.options.length] = new Option('Please select one of the options above first',' ');
	}
	if (chosen=="1") {
		selbox.options[selbox.options.length] = new Option('first choice - option one','oneone');
		selbox.options[selbox.options.length] = new Option('first choice - option two','onetwo');
		selbox2.options[selbox2.options.length] = new Option('first choice - option one A','oneoneA');
		selbox2.options[selbox2.options.length] = new Option('first choice - option two A','onetwoA');
	}
	if (chosen=="2") {
		selbox.options[selbox.options.length] = new Option('second choice - option one','twoone');
		selbox.options[selbox.options.length] = new Option('second choice - option two','twotwo');
		selbox2.options[selbox2.options.length] = new Option('second choice - option one A','twooneA');
		selbox2.options[selbox2.options.length] = new Option('second choice - option two A','twotwoA');
		selbox2.options[selbox2.options.length] = new Option('second choice - option three A','twothreeA');
	}
	if (chosen=="3") {
		selbox.options[selbox.options.length] = new Option('third choice - option one','threeone');
		selbox.options[selbox.options.length] = new Option('third choice - option two','threetwo');
		selbox2.options[selbox2.options.length] = new Option('third choice - option one A','threeoneA');
	}
}

function OpenCalendar(idname, postBack) {
	popUp = window.open('Calendar.aspx?formname=' + document.forms[0].name + 
		'&id=' + idname + '&selected=' + document.forms[0].elements[idname].value + '&postBack=' + postBack, 
		'popupcal', 
		'width=165,height=208,left=200,top=250');
}

function SetDate(formName, id, newDate, postBack) {
	eval('var theform = document.' + formName + ';');
	popUp.close();
	theform.elements[id].value = newDate;
	if (postBack)
		__doPostBack(id,'');
}		

function ShowModal(mess) {
    document.getElementById("message").innerHTML = mess;	
    document.getElementById("modalLayer").style.visibility="visible";
    document.getElementById("ConBox").style.visibility="visible";
    document.getElementById("cB3").focus();
    CenterContent();
}
		
function HideModal(mess) {
	document.getElementById("modalLayer").style.visibility="hidden";
	document.getElementById("ConBox").style.visibility="hidden";		
}

function framebreakout() {
	if (top.location!=location) {
		top.location.href="Structures.aspx";
    }
}

function CenterContent() {
	if(typeof window.innerWidth=='number'){
		pageW=window.innerWidth;
		pageH=window.innerHeight;
		boxW=document.getElementById("ConBox").innerWidth;
		boxH=document.getElementById("ConBox").innerHeight;
	}
	
	else if(document.documentElement && document.documentElement.clientWidth) {
		pageW=document.documentElement.clientWidth;
		pageH=document.documentElement.clientHeight;
		boxW=document.getElementById("ConBox").clientWidth;
		boxH=document.getElementById("ConBox").clientHeight;
	}
	
	else {
		pageW=document.body.clientWidth;
		pageH=document.body.clientHeight;
		boxW=document.getElementById("ConBox").clientWidth;
		boxH=document.getElementById("ConBox").clientHeight;
	}
	
	document.getElementById("modalLayer").style.height=(pageH-20)+"px";
	placeW=Math.floor((pageW-boxW)/2)+"px";
	placeH=Math.floor((pageH-boxH)/2)+"px";
	document.getElementById("ConBox").style.left=placeW;
	document.getElementById("ConBox").style.top=placeH;
}			

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 Toggle(obj) {
	var el=document.getElementById(obj);
	el.style.display=(el.style.display!='none'?'none':'');
}

function ValidateForm() {
    var dt=document.frmForm1.txtDate;
	if (isDate(dt.value)===false) {
        dt.focus();
        return false;
    }
        return true;
}

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 : dd/mm/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;
}
