window.onload = init;
function init(){
	var LoginBox = document.getElementById('LoginBox');
	if( LoginBox != null && LoginBox != "" ){
		centerElement("LoginBox",100);
		showElement("LoginBox");
		addEvent(window,"resize",doCenter);
		//window.onresize = doCenter;
	}
	addInputEvents();
	setInitialFocus();
	if( document.documentElement && typeof document.documentElement.style.maxHeight!="undefined" ){
		//ignore IE7
	}
	else if( document.all ){
		setFooterForIE6();
		addEvent(window,"scroll",setFooterForIE6);
		addEvent(window,"resize",setFooterForIE6);
	}
}
function setFooterForIE6(){
		var footer = document.getElementById('footer');
		var scrollPos;
		if( document.documentElement && document.documentElement.clientHeight ){
			//IE 6+ in 'standards compliant mode'
			iHeight = document.documentElement.clientHeight;
			scrollPos = document.documentElement.scrollTop;
		}
		else if( document.body && document.body.clientHeight ){
			//IE 4 compatible
			iHeight = document.body.clientHeight;
			scrollPos = document.body.scrollTop;
		}
		footer.style.position = "absolute";
		footer.style.top = (scrollPos + iHeight - footer.offsetHeight);		
}
function setInitialFocus(){
	var curEl;
	var setFocus = false;
	for( var i=0; i < document.forms.length && setFocus != true; i++ ){
		for( var k=0; k < document.forms[i].elements.length; k++ ){
			curEl = document.forms[i].elements[k];
			if( curEl.type == "select-one" ){
				if( !setFocus ){
					setFocus = true;
					break;
				}
			}
			else if( curEl.type == "text" || curEl.type == "password" || curEl.type == "textarea" ){
				if( !setFocus && curEl.focus ){
					curEl.focus();
					setFocus = true;
					break;
				}
			}
		}
	}
}
function addInputEvents(){
	if( document.all ){ // Check for IE
		var curEl; // Current Element
		for( var i=0; i < document.forms.length; i++ ){
			for( var k=0; k < document.forms[i].elements.length; k++ ){
				curEl = document.forms[i].elements[k];
				if( curEl.type == "text" || curEl.type == "password" || curEl.type == "textarea" ){
					addEvent(curEl, "focus", doFocus);
					addEvent(curEl, "blur", doBlur);
				}
			}
		}
	}
}
function showElement(elementid){
	var element = document.getElementById(elementid);
	if( !element ){
		return false;
	}
	element.style.visibility = "visible";
	element.style.display = "block";
}
function centerElement(elementid, offsetY, offsetX){
	var element = document.getElementById(elementid);
	if( !element ){
		return false;
	}
	var elementWidth;
	var elementHeight;
  var myWidth = 0;
	var myHeight = 0;
	
	if( offsetY == null || isNaN(offsetY) ){
		offsetY = 0;
	}
	if( offsetX == null || isNaN(offsetX) ){
		offsetX = 0;
	}
	
	// Code taken from http://www.howtocreate.co.uk/tutorials/javascript/browserwindow
  if( typeof( window.innerWidth ) == 'number' ) {
    //Non-IE
    myWidth = window.innerWidth;
    myHeight = window.innerHeight;
  } else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
    //IE 6+ in 'standards compliant mode'
    myWidth = document.documentElement.clientWidth;
    myHeight = document.documentElement.clientHeight;
  } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
    //IE 4 compatible
    myWidth = document.body.clientWidth;
    myHeight = document.body.clientHeight;
  }
	// End taken code
	
	if( element.style.display == "none" || element.style.display == "" ){
		element.style.visibility = "hidden";
		element.style.display = "block";
		elementWidth = element.offsetWidth;
		elementHeight = element.offsetHeight;
		element.style.display = "none";
		element.style.visibility = "visible";
	}
	else{
		elementWidth = element.offsetWidth;
		elementHeight = element.offsetHeight;
	}

	if( myHeight > (elementHeight+offsetY) ){
		element.style.top = Math.round((myHeight/2) - (elementHeight/2) - offsetY) + "px";
	}
	else if( myHeight > elementHeight ){
		element.style.top = Math.round((myHeight/2) - (elementHeight/2)) + "px";
	}
	else{
		element.style.top = 0 + "px";
	}
	if( myWidth > (elementWidth + offsetX) ){
		element.style.left = Math.round((myWidth/2) - (elementWidth/2) - offsetX) + "px";	
	}
	else if( myWidth > elementWidth ){
		element.style.left = Math.round((myWidth/2) - (elementWidth/2)) + "px";	
	}
	else{
		element.style.left = 0 + "px";
	}
}
function doFocus(e){
	var obj = getElement(e);
	switch(obj.type){
		case "select-one":	addClass(obj, "highlightSelect");
												break;
		case "textarea": 		addClass(obj, "highlightTextarea");
												break;
		default: 						addClass(obj, "highlightBox");
												break;
	}
	return true;
}
function doBlur(e){
	var obj = getElement(e);
	switch(obj.type){
		case "select-one":	removeClass(obj, "highlightSelect");
												break;
		case "textarea": 		removeClass(obj, "highlightTextarea");
												break;
		default: 						removeClass(obj, "highlightBox");
												break;
	}
	return true;
}
function doCenter(){
	centerElement("LoginBox", 100);
}
function addEvent(obj, evType, fn, useCapture){
	if (obj.addEventListener){
		obj.addEventListener(evType, fn, useCapture);
		return true;
	}
	else if (obj.attachEvent){
		var r = obj.attachEvent("on"+evType, fn);
		return r;
	}
	else {
		alert("Handler could not be attached");
	}
}

function validateform ( )
{
    valid = true;
	if (document.frmTitle.newtitle.value == "")
	{
		alert ("Please fill a new Property Title in the text box.");
		document.frmTitle.newtitle.select();
		valid = false;
	}	
    return valid;
}

function updaterow(val)
{
	document.location.href = "addtitle.asp?ID=" + val;
}

function updaterowchanges(val)
{
	txtID = "title" + val;
	var textElement = document.getElementById(txtID);
	document.location.href = "addtitle2.asp?update=Y&title=" + textElement.value + "&id=" + val;
}

function deleterow(val)
{
	document.location.href = "addtitle2.asp?delete=Y&id=" + val;
}

function doDoubleCheck(){
	if( confirm("Are you sure you want to delete this property?") ){
		return true;
	}
	else{
		return false;
	}
}

/*********** Begin Functions taken from http://www.openjs.com/scripts/dom/class_manipulation.php ********/
function hasClass(ele,cls) {
	return ele.className.match(new RegExp('(\\s|^)'+cls+'(\\s|$)'));
}
function addClass(ele,cls) {
	if (!this.hasClass(ele,cls)) ele.className += " "+cls;
}
function removeClass(ele,cls) {
	if (hasClass(ele,cls)) {
		var reg = new RegExp('(\\s|^)'+cls+'(\\s|$)');
		ele.className=ele.className.replace(reg,' ');
	}
}
/*********** End Functions taken from http://www.openjs.com/scripts/dom/class_manipulation.php ********/

function getElement(e){
	e = getEvent(e);
	if( e.target ){
		obj = e.target;
	}
	else{
		obj = e.srcElement;
	}
	return obj;
}
function getEvent(e){
	if(!e){
		e = window.event;
	}
	return e;
}
function doDelete(id){
	var isSure = false;
	var isDeleted = false;
	var resultArr;
	var errMsg;
	
	isSure = confirm("Are you sure you want to delete this article?");
	if( !isSure ){
		return false;
	}
	
	resultArr = doAjaxDelete(id);
	ajaxCallSucceeded = resultArr[0];
	if( !ajaxCallSucceeded ){
		if( resultArr.length <= 1 || resultArr[1] == "" ){
			errMsg = "An error has occurred.";
		}
		else{
			errMsg = resultArr[1];
		}
		alert(errorMsg)
	}
}

var ajaxRequest;
function doAjaxDelete(id){
	var requestMethod;
	var requestURL;
	var requestASync;
	var requestData;
	
	if (window.XMLHttpRequest){ 
		ajaxRequest = new XMLHttpRequest();
	} 
	else{
		if (window.ActiveXObject){
			ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
		}
		else{
			return [false,"ERROR: Unable to create XMLHTTP object."];
		}
	}
	
	requestMethod = "POST";
	requestURL = "delNews.asp";
	requestASync = "false";
	requestData = "ID=" + encodeURIComponent(id);
	
	ajaxRequest.onreadystatechange = handleAjaxResponse;
	
	ajaxRequest.open(requestMethod, requestURL, requestASync);
	ajaxRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	ajaxRequest.send(requestData);
	return [true];
}
function handleAjaxResponse(e){
	if(ajaxRequest.readyState  == 4){
		if(ajaxRequest.status  == 200){
			if( ajaxRequest.responseText == "SUCCESS" ){
				alert("The article was successfully deleted.");
				location.href='./listNews.asp';
			}
			else{
				alert(ajaxRequest.responseText);
			}
		}
		else{
			alert("ERROR " + ajaxRequest.status + ": " + ajaxRequest.statusText);
		}
	}
}