var FormObjAjax =
{
    Active:false,
    SetActive:function(b) { this.Active=b; },
    Timer: { Load:false, ReLoad:function() { clearTimeout(this.Load); FormObjAjax.Active=false; this.Load=arguments[0]; },
             Kill: function() { FormObjAjax.Timer.ReLoad(null); } },
    AjaxParams:false,
    BasePath: JSPATH
}

var httpFormPost = HttpObj();

getRidOfGoogleToolbarHiJacking();

function getRidOfGoogleToolbarHiJacking()
{
     addThisEvent(window, 'load', setListenerForGoogleToolbarHiJack, true)
}

function setListenerForGoogleToolbarHiJack()
{
    var arInput  = document.getElementsByTagName('input');
    var arSelect = document.getElementsByTagName('select');
    var arFlds = new Array(arInput, arSelect);

    if (arFlds.length)
    {
        for (var i = 0; i < arFlds.length; i++)
        {
            if (arFlds[i].length)
            {
                for (var n = 0; n < arFlds[i].length; n++)
                {
                    addThisEvent(arFlds[i][n], 'propertychange',revertGoogleToolbarStyle,true);
                    arFlds[i][n].style.backgroundColor = "";
                }
            }
        }
    }
}

function revertGoogleToolbarStyle()
{
    if (event.srcElement.style.backgroundColor != '') // != "#a0d0ff"
        event.srcElement.style.backgroundColor = '';
}


function docObj(id)
{
	if (document.getElementById(id))
		return document.getElementById(id);
}

function doHttpFormPost()
{
	if (! FormObjAjax.IsActive)
	{       
	    try
	    {
		    FormObjAjax.SetActive(true);
			
		    httpFormPost.open('POST', FormObjAjax.BasePath + 'includes/axlib.php', true);
		    httpFormPost.onreadystatechange = function() {

			    if (httpFormPost.readyState == 4)
			    {
                        var _json = httpFormPost.responseText.replace(/\\\"/g,'"');
                        var ResultObj = eval('(' + _json + ')');

                        //alert(ResultObj.success);
						FormObjAjax.SetActive(false);
			    }
			        
		    };
		    httpFormPost.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
		    httpFormPost.send(FormObjAjax.AjaxParams);

	    }
	    catch (e)
	    {
		   FormObjAjax.SetActive(false);
	    }
    }
}

function addThisEvent(obj,evType,fn,useCapture)
{
	if(obj)
	{
		if(obj.addEventListener)
			obj.addEventListener(evType,fn,useCapture);
		else if(obj.attachEvent)
			obj.attachEvent('on'+evType,fn);
	}
}

function doNoInjection()
{
	var input = document.createElement('input');
		input.type = 'hidden';
		input.id = input.name = 'InjectionFree';
		input.value = 'true';
		
	var arForms = document.getElementsByTagName('form');
	
	arForms[0].appendChild(input);
	
	if (arForms.length > 1)
	{	
		var domInjectionNode = docObj(input.id);
		
		for (var i = 1; i < arForms.length; i++)
		{
			var domNode = domInjectionNode.cloneNode(false);	
			arForms[i].appendChild(domNode);
		}
	}		
}

function HttpObj()
{
  var xmlhttp;
  /*@cc_on
  @if (@_jscript_version >= 5)
    try {
      xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
      try {
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
      } catch (E) {
        xmlhttp = false;
      }
    }
  @else
  xmlhttp = false;
  @end @*/
  if (!xmlhttp && typeof XMLHttpRequest != 'undefined')
  {
    try {
      xmlhttp = new XMLHttpRequest();
    } catch (e) {
      xmlhttp = false;
    }
  }
  return xmlhttp;
}