

	var req;
	var currentForm;
	var currentMainWindow;
	var curValue;
	var dataChanged = false;
	var lastButton = 0;
	var lastButtonClassName;
	var checkflag = "false";

	// SET UP THE MAIN WINDOW BUTTONS
	//var mwButtons = new Array("overview", "portfolios", "property", "organisations", "administration", "contact", "help", "logout"); // BUTTON NAMES
	//var mwInnerHTML = new Array(7); // FOR STORING SCREEN CONTENT WHEN USER CHANGES TAB

	function getQVar (str) {	
		var temp;
		
		temp = location.search;
		temp = temp.replace('?','');
		
		var tempArray = temp.split('&');
				
		for (var i=0; i<tempArray.length; i++) {
			var tempArray2 = tempArray[i].split("=");

			for (var j=0; j<tempArray2.length; j++) {
				if (tempArray2[j] == str) {
					return tempArray2[j+1];
				}
			}			
			
		}
	}
	
	function changeClass (obj, newClass) {
		obj.className = newClass;
	}	
	
	
	function loadid(strPageName, ID) {
		document.location.href=strPageName + '.asp?id=' + ID;
	}	
	
	function check(field) {
		if (checkflag == "false") {
			for (i = 0; i < field.length; i++) {
				field[i].checked = true;
				field[i].checked = true;
			}
			checkflag = "true";
			return "Uncheck All"; 
		} else {
			for (i = 0; i < field.length; i++) {
				field[i].checked = false;
			}
			checkflag = "false";
			return "Check All"; 
		}
	}	
	
	
	function loadMainWindow (strName, strClassName, strURL) {
	
		sendRequest(strURL)	
		
		currentMainWindow = strName
		//overview.style.class='greenbuttonselected';
		
		if (lastButton != undefined) {
			lastButton.className = lastButtonClassName;
		}
		
		lastButton = eval(getDocObject(strName))
		lastButtonClassName = eval(getDocObject(strName)).className
		
		eval(getDocObject(strName)).className = 'btnselected';
		
		
		
	}
	
	
	function flagSave (fid) {
		if (eval(getDocObject(fid)).btnsave != undefined) {
			eval(getDocObject(fid)).btnsave.src='images/btn_save_notsaved.gif';
			dataChanged = true;
		}
	}
	
	function preLoadImages () {
		if (document.images) {	
			var moreplus=new Image();
			var moreminus=new Image();
			moreplus.src='images/itembar_plus.gif';
			moreminus.src='images/itembar_minus.gif';	
			
			var btnsave = new Image ()
			var btnsavenotsaved = new Image()
			var btnsavedisabled = new Image()
			btnsave.src= 'images/btn_save.gif';
			btnsavenotsaved.src = 'images/btn_save_notsaved.gif';
			btnsavenotsaved.src = 'images/btn_save_disabled.gif';
		}
	}
	
	
	function togglevis(divobj,imgobj,blockimg,noneimg){	
	    if (divobj.style.display=='none') {
	       divobj.style.display='block'	   
	       imgobj.src=blockimg;
	    } else {
	        divobj.style.display='none'
	        imgobj.src=noneimg;
	    }
	}

	

	
	function handleResponse () {	
		if (req.readyState == 4) {		
			// RESPONSE LOADED
	        if (req.status == 200) {
	            // RESPONSE OK
				var response = req.responseText;
				//alert(response.form);
				//alert(response.form("field1"));
				//document.write(response);
				//alert(eval(getDocObject('client_detail')));
				//alert(currentForm);


				
				eval(getDocObject('div'+currentForm)).innerHTML = response;				
	        } else {
				// RESPONSE FAILED
	            alert("There was a problem contacting the server" +
	                req.statusText);
	        }		
		

		}
	}	
	
	function createXMLHttp () {
		req = false;
	    // branch for native XMLHttpRequest object
	    if(window.XMLHttpRequest) {
	    	try {
				req = new XMLHttpRequest();
	        } catch(e) {
				req = false;
	        }
	    // branch for IE/Windows ActiveX version
	    } else if(window.ActiveXObject) {
	       	try {
	        	req = new ActiveXObject("Msxml2.XMLHTTP");
	      	} catch(e) {
	        	try {
	          		req = new ActiveXObject("Microsoft.XMLHTTP");
	        	} catch(e) {
	          		req = false;
	        	}
			}
	    }
	}
	
	
	function sendRequest(frm, file) {
		// POSTS DATA AND RETURNS A FORM
		var refresh = Math.random();
		var str = "";
		//alert(frm.name);
		currentForm = frm.name;
				
		if (str = getForm(frm)) {
			//alert('running request!');
			//
			
			//alert(str);
			req.open('POST',file+'?'+'r='+refresh);
			req.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
			req.send(str);
			
			//alert(str);
			
			req.onreadystatechange = handleResponse;
			//req.send(null);
		}
		return false;
	}
	
	
	function getForm(fObj) {
		var str = "";
		var ft = "";
		var fv = "";
		var fn = "";
		var els = "";
		
		//alert(fObj.elements);
		
		if (fObj.elements != null && fObj.elements != undefined) {
			for (var i=0;i<fObj.elements.length;i++) {
		
				els = fObj.elements[i];
				ft = els.title;
				fv = els.value;
				fn = els.name;			
				
				//els.style.backgroundColor = 'EFDBDE';
				els.className = 'fielddisabled';
				
				switch (els.type) {
					case "text":
					case "hidden":
					case "password":
					case "textarea":
						// CHECK MANDATORY
						if (encodeURI(ft) == "required" && encodeURI(fv).length < 1) {
							//alert('''+fn+'' is a required field, please complete.');
							alert(fn+' is a required field, please complete');
							els.focus();
							return false;
						}
						str += fn + "=" + encodeURI(fv) + "&";
						break;
					
					case "checkbox":
					case "radio":
						if (els.checked) {str += fn + "=" + encodeURI(fv) + "&"};
						break;
						
					case "select-one":
						str += fn + "=" + els.options[els.selectedIndex].value + "&";
						break;
				
				}		
			}
			str = str.substr(0,(str.length - 1));
			return str;
		} else {
			str='';
			return true;
		}
		
			
	}
	

	var openlookup;
	var openlookupname='';	
	
    getBrowserType();	
	createXMLHttp();
	
	


	

	function destroy () {
		if (openlookupname!='') {
			openlookup.style.display='none';
			openlookupname='';
		}
	}	

    function getBrowserType () {
    	if (navigator.userAgent.indexOf("Opera") != -1 && document.getElementById) browserType = "OP"; 
    	if (document.all) browserType = "IE"; 
    	if (document.layers) browserType = "NN"; 
    	if (!document.all && document.getElementById) browserType = "MO"; 
    }
	
	
	var BrowserDetect = {
		init: function () {
			this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
			this.version = this.searchVersion(navigator.userAgent)
				|| this.searchVersion(navigator.appVersion)
				|| "an unknown version";
			this.OS = this.searchString(this.dataOS) || "an unknown OS";
		},
		searchString: function (data) {
			for (var i=0;i<data.length;i++)	{
				var dataString = data[i].string;
				var dataProp = data[i].prop;
				this.versionSearchString = data[i].versionSearch || data[i].identity;
				if (dataString) {
					if (dataString.indexOf(data[i].subString) != -1)
						return data[i].identity;
				}
				else if (dataProp)
					return data[i].identity;
			}
		},
		searchVersion: function (dataString) {
			var index = dataString.indexOf(this.versionSearchString);
			if (index == -1) return;
			return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
		},
		dataBrowser: [
			{ 	string: navigator.userAgent,
				subString: "OmniWeb",
				versionSearch: "OmniWeb/",
				identity: "OmniWeb"
			},
			{
				string: navigator.vendor,
				subString: "Apple",
				identity: "Safari"
			},
			{
				prop: window.opera,
				identity: "Opera"
			},
			{
				string: navigator.vendor,
				subString: "iCab",
				identity: "iCab"
			},
			{
				string: navigator.vendor,
				subString: "KDE",
				identity: "Konqueror"
			},
			{
				string: navigator.userAgent,
				subString: "Firefox",
				identity: "Firefox"
			},
			{
				string: navigator.vendor,
				subString: "Camino",
				identity: "Camino"
			},
			{		// for newer Netscapes (6+)
				string: navigator.userAgent,
				subString: "Netscape",
				identity: "Netscape"
			},
			{
				string: navigator.userAgent,
				subString: "MSIE",
				identity: "Explorer",
				versionSearch: "MSIE"
			},
			{
				string: navigator.userAgent,
				subString: "Gecko",
				identity: "Mozilla",
				versionSearch: "rv"
			},
			{ 		// for older Netscapes (4-)
				string: navigator.userAgent,
				subString: "Mozilla",
				identity: "Netscape",
				versionSearch: "Mozilla"
			}
		],
		dataOS : [
			{
				string: navigator.platform,
				subString: "Win",
				identity: "Windows"
			},
			{
				string: navigator.platform,
				subString: "Mac",
				identity: "Mac"
			},
			{
				string: navigator.platform,
				subString: "Linux",
				identity: "Linux"
			}
		]

	};
	BrowserDetect.init();


    function sort (strOrderBy){
		eval(getDocObject("orderby")).value = strOrderBy;
		eval(getDocObject("button")).value = "Search";
		eval(getDocObject("searchlookup")).submit();
    } 

	
    function getFormObject(frmName, strObjectName) {
	var temp;
	
		temp = "document.all" + frmName + "." + strObjectName
		if (temp == undefined) {
			temp = "document." + frmName + "." + strObjectName
			if (temp == undefined) {
				temp = "document.getElementById('" + strObjectName + "')"
			}
		}	
	return temp;
    }	
	

    function getDocObject(strObjectName) {
	var temp;

		temp = "document.all." + strObjectName
		if (temp == undefined) {
			temp = "document." + strObjectName
			if (temp == undefined) {
				temp = "document.getElementById('" + strObjectName + "')"
			}
		}	
	return temp;
    }

	function newImage(arg) {
		if (document.images) {
			rslt = new Image();
			rslt.src = arg;
			return rslt;
		}
	}
	
	function changeImages() {
		if (document.images && (preloadFlag == true)) {
			for (var i=0; i<changeImages.arguments.length; i+=2) {
				document[changeImages.arguments[i]].src = changeImages.arguments[i+1];
			}
		}
	}
	
	var preloadFlag = false;
	function preloadImages() {
		if (document.images) {
			menu_home_over = newImage("images/menu_home_over.gif");
			menu_catalogue_over = newImage("images/menu_catalogue_over.gif");
			menu_shoppingcart_over = newImage("images/menu_shoppingcart_over.jpg");
			menu_contact_over = newImage("images/menu_contact_over.jpg");
			menu_search_over = newImage("images/menu_search_over.jpg");
			menu_spares_over = newImage("images/menu_spares_over.jpg");
			preloadFlag = true;
		}
	}

	function openwindow(id, url) {
		//var refresh = Math.random();
		//var refstring = string(refresh)
		var screenwidth = window.screen.availWidth-10;
		var screenheight = window.screen.availHeight-50;
		var screenleft=(screen.width/2)-75;
		var screentop=(screen.height/2)-150;
		var params = 'left=' + screenleft + ',top=' + screentop + ',width=550,height=450,toolbar=no,location=no,directories=no,status=yes,menubar=no,scrollbars=yes,resize=yes,resizable=yes';
		var wind=window.open(url,'newwindow'+id, params);
	}	
	
	
	function correctPNG() {
		for(var i=0; i<document.images.length; i++)  {
		  var img = document.images[i]
		  var imgName = img.src.toUpperCase()
		  if (imgName.substring(imgName.length-3, imgName.length) == "PNG")
			 {
			 var imgID = (img.id) ? "id='" + img.id + "' " : ""
			 var imgClass = (img.className) ? "class='" + img.className + "' " : ""
			 var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' "
			 var imgStyle = "display:inline-block;" + img.style.cssText 
			 if (img.align == "left") imgStyle = "float:left;" + imgStyle
			 if (img.align == "right") imgStyle = "float:right;" + imgStyle
			 if (img.parentElement.href) imgStyle = "cursor:hand;" + imgStyle		
			 var strNewHTML = "<span " + imgID + imgClass + imgTitle
			 + " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";"
			 + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
			 + "(src=\'" + img.src + "\', sizingMethod='scale');\"></span>" 
			 img.outerHTML = strNewHTML
			 i = i-1
			}
		}
	}
	
