//
// Update Tree function in Design Mode 
//
function GNFTreeUpdate(catId,scriptPath,queryFoot,depth,forceRefresh) {
        var lastInList = GNFTreeUpdate.arguments[5];
        if (typeof lastInList == 'undefined') { lastInList = 0; }
               

	//alert('cat'+catId); 
        if (document.getElementById('cat'+catId).innerHTML == '' || forceRefresh==1) {
                GNFAjax(scriptPath,queryFoot+'&amp;parentId='+catId+'&amp;depth='+depth,'cat'+catId);
                if (catId!=0) { 

			if (document.getElementById('tree'+catId) != null  ) { 
				document.getElementById('tree'+catId).src = globalFiles+'/admin/minus.gif';
				}
			}
                document.getElementById('cat'+catId).style.display = 'none';
                }
        if((document.getElementById('cat'+catId).style.display != 'none')) {
                document.getElementById('cat'+catId).style.display = 'none';
                //document.getElementById('layout'+catId).style.display = 'none';
                if (lastInList) {
			if (document.getElementById('tree'+catId) != null  ) { 
                        	document.getElementById('tree'+catId).src = globalFiles+'/admin/plus.gif';
				}
                        }
                else {  
			if (document.getElementById('tree'+catId) != null  ) { 
                        	document.getElementById('tree'+catId).src = globalFiles+'/admin/plusbottom.gif';
				}
                        }   
                }
        else {
                //document.getElementById('layout'+catId).style.display = 'block';
                document.getElementById('cat'+catId).style.display = 'block';
                if (lastInList) {
			if (document.getElementById('tree'+catId) != null  ) { 
                        	document.getElementById('tree'+catId).src = globalFiles+'/admin/minus.gif';
				}
                        }
                else { 
			if (document.getElementById('tree'+catId) != null  ) { 
                        	document.getElementById('tree'+catId).src = globalFiles+'/admin/minusbottom.gif';
                        	} 
                        } 
                }
        }
                       
        

        //
        // Handle the enter key to move to next object, instead of submitting form
        //

	function handleEnter(field, event) {
		var keyCode = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;
		if (keyCode == 13) {
			var i;
			for (i = 0; i < field.form.elements.length; i++)
				if (field == field.form.elements[i])
					break;
			i = (i + 1) % field.form.elements.length;
			field.form.elements[i].focus();
			return false;
		} 
		else
		return true;
	}      


//
// Ajax functions
//
function GNFAjax() {

        //GNFAjax parameters
        //(url,parameters,spanId,execWhenFinished);
		
	var debugWin		= GNFAjax.arguments[5];
        var spanId  		= GNFAjax.arguments[2];
        var execWhenFinished    = GNFAjax.arguments[3];
        var randomnumber	= Math.floor(Math.random()*11111);
        var url         	= GNFAjax.arguments[0];
        var parameters  	= "&"+GNFAjax.arguments[1] + "&cache="+randomnumber;
        parameters      	= parameters.replace(/\?/g,"");

	// set browser request object
        var http;
       	var browser = navigator.appName;
       	if(browser == "Microsoft Internet Explorer"){ http = new ActiveXObject("Microsoft.XMLHTTP"); }
	else { http = new XMLHttpRequest(); }

        document.body.style.cursor = 'wait';
        var elems = document.getElementsByTagName("a");
        for (var i = 0; i < elems.length; i++) { elems[i].style.cursor = 'wait'; }
          
          
        //alert(spanId+":"+url+"?"+parameters);
        http.onreadystatechange = function () {
                if (http.readyState==4 || http.readyState=="complete") {
         
                        if (typeof documentChanged != 'undefined') { documentChanged=false; }
                        document.body.style.cursor = '';
                        var elems = document.getElementsByTagName("a");
                        for (var i = 0; i < elems.length; i++) { elems[i].style.cursor = ''; }
                        var response = http.responseText;
                        if (typeof spanId != 'undefined') { 
				if (spanId != '') { document.getElementById(spanId).innerHTML=response; } 
				}
                        if (typeof execWhenFinished != 'undefined') {  eval(execWhenFinished);}
                        }

		}
	// do the post
        http.open('POST', url, true);

	http.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
        http.send(parameters);
        }

