var XMLHttpRequestObject = createXMLHttpRequestObject();
var bFlag = (document.all) ? 0 : 1;
var bFireFoxFlag = (document.all) ? 0 : 1;
function createXMLHttpRequestObject()
{
  var XMLHttpRequestObject = false;
  
  try
  {
    XMLHttpRequestObject = new XMLHttpRequest();
  }
  catch(e)
  {
    var aryXmlHttp = new Array(
                               "MSXML2.XMLHTTP",
                               "Microsoft.XMLHTTP",
                               "MSXML2.XMLHTTP.6.0",
                               "MSXML2.XMLHTTP.5.0",
                               "MSXML2.XMLHTTP.4.0",
                               "MSXML2.XMLHTTP.3.0"
                               );
    for (var i=0; i<aryXmlHttp.length && !XMLHttpRequestObject; i++)
    {
      try
      {
        XMLHttpRequestObject = new ActiveXObject(aryXmlHttp[i]);
      } 
      catch(e){window.status = "createXMLHttpRequestObject: XMLHttpRequestObject Error";}
    }
  }
  
  if (!XMLHttpRequestObject)
  {
    alert("Error: failed to create the XMLHttpRequest object.");
  }
  else 
  {
    return XMLHttpRequestObject;
  }
}

function checkFormInput(keyEvent, dataSource, idForm)
{
  keyEvent = (keyEvent) ? keyEvent: window.event;
  input = (keyEvent.target) ? keyEvent.target : keyEvent.srcElement;
  
  if(keyEvent.type == "checkbox")
  {
    keyEvent.value = keyEvent.checked;
  }
  else if(keyEvent.type == "radio")
  {
    keyEvent.value = keyEvent.checked;
    if (keyEvent.value)
    {
      for(i=0; i<document.getElementById(idForm).elements.length - 1; i++)
      {
        /*Debug
        alert(document.getElementById(idForm).elements[i].name);
        alert(document.getElementById(idForm).elements[i].value);
        alert(document.getElementById(idForm).elements[i].checked);
        */
        if(document.getElementById(idForm).elements[i].name==keyEvent.name)
        {
          /*alert(document.getElementById(idForm).elements[i].name+':'+document.getElementById(idForm).elements[i].value);*/
          document.getElementById(idForm).elements[i].value = document.getElementById(idForm).elements[i].checked;
        }
      }
    } /* End: if (keyEvent.value)*/
  } /* End: if (keyEvent.type == "change")*/
}

function checkFormInput_radio_realtime(keyEvent, dataSource, idForm)
{
  keyEvent = (keyEvent) ? keyEvent: window.event;
  input = (keyEvent.target) ? keyEvent.target : keyEvent.srcElement;
  
  if(keyEvent.type == "checkbox")
  {
    keyEvent.value = keyEvent.checked;
  }
  else if(keyEvent.type == "radio")
  {
    keyEvent.value = keyEvent.checked;
    if (keyEvent.value)
    {
      switch(bFlag)
      {
        case 0:
          /*IE*/
          for(i=0; i<document.getElementById(idForm).elements.length - 1; i++)
          {
            /*Debug
            alert(document.getElementById(idForm).elements[i].name);
            alert(document.getElementById(idForm).elements[i].value);
            alert(document.getElementById(idForm).elements[i].checked);
            */
        
            if(document.getElementById(idForm).elements[i].name==keyEvent.name)
            {
              /*alert(document.getElementById(idForm).elements[i].name+':'+document.getElementById(idForm).elements[i].value);*/
              document.getElementById(idForm).elements[i].value = document.getElementById(idForm).elements[i].checked;
            }
          }
          document.getElementById(idForm).submit();
          break;
        case 1:
          /*FF*/
          //alert(idForm+":"+document.getElementById(idForm));
          //alert('FireFox: NOT Support yet.');
          for(i=0; i<document.getElementById(idForm).elements.length - 1; i++)
          {
            /*Debug
            alert(document.getElementById(idForm).elements[i].name);
            alert(document.getElementById(idForm).elements[i].value);
            alert(document.getElementById(idForm).elements[i].checked);
            */
        
            if(document.getElementById(idForm).elements[i].name==keyEvent.name)
            {
              /*alert(document.getElementById(idForm).elements[i].name+':'+document.getElementById(idForm).elements[i].value);*/
              document.getElementById(idForm).elements[i].value = document.getElementById(idForm).elements[i].checked;
            }
          }
          document.getElementById(idForm).submit();
          break;
        default:
          for(i=0; i<document.getElementById(idForm).elements.length - 1; i++)
          {
            /*Debug
            alert(document.getElementById(idForm).elements[i].name);
            alert(document.getElementById(idForm).elements[i].value);
            alert(document.getElementById(idForm).elements[i].checked);
            */
        
            if(document.getElementById(idForm).elements[i].name==keyEvent.name)
            {
              /*alert(document.getElementById(idForm).elements[i].name+':'+document.getElementById(idForm).elements[i].value);*/
              document.getElementById(idForm).elements[i].value = document.getElementById(idForm).elements[i].checked;
            }
          }
          document.getElementById(idForm).submit();
          break;
      }
      
    } /* End: if (keyEvent.value)*/
  } /* End: if (keyEvent.type == "change")*/
}

function sendFormData(idForm, dataSource, divID, ifLoading)
{
  var postData='';
  var strReplaceTemp;
  
  if(XMLHttpRequestObject)
  {
    if(!bFireFoxFlag)
    {
      XMLHttpRequestObject.open("POST", dataSource);
      XMLHttpRequestObject.setRequestHeader("Method", "POST " + dataSource + " HTTP/1.1");
	    XMLHttpRequestObject.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	  }
	  
    XMLHttpRequestObject.onreadystatechange = function()
    {
      if (XMLHttpRequestObject.readyState == 4 &&
          XMLHttpRequestObject.status == 200)
      {
        try
        {
          var objDiv = document.getElementById(divID);
            
          var strTemp1 = XMLHttpRequestObject.responseText;
          //var strTemp2 = strTemp1.replace(/\s+/,'');
          var strTemp2 = strTemp1;
          var strTemp3 = strTemp2.substring(0,11);
            
          if(strTemp2.match("<script>"))
          {
            var AryTemp1 = strTemp2.split("<script>");
            if(AryTemp1.length>0)
            {
              eval(AryTemp1[0]);
              objDiv.innerHTML = AryTemp1[1];
            }
          }
          else
          {
             objDiv.innerHTML = XMLHttpRequestObject.responseText;
          }
        }
        catch(e)
        {
          try
          {
            var objDiv = parent.document.getElementById(divID);
          
            var strTemp1 = XMLHttpRequestObject.responseText;
            //var strTemp2 = strTemp1.replace(/\s+/,'');
            var strTemp2 = strTemp1;
            var strTemp3 = strTemp2.substring(0,11);
            
            if(strTemp2.match("<script>"))
            {
              var AryTemp1 = strTemp2.split("<script>");
              if(AryTemp1.length>0)
              {
                eval(AryTemp1[0]);
                objDiv.innerHTML = AryTemp1[1];
              }
            }
            else
            {
               objDiv.innerHTML = XMLHttpRequestObject.responseText;
            }
          }
          catch(e)
          {
            window.status="sendFormData1: getElementById(divID) Error";
          }
        }
      }
      else
      {
        if(ifLoading)
        {
          try
          {
            var objDiv = document.getElementById(divID);
            objDiv.innerHTML = "<img src=loading.gif>";
          }
          catch(e){window.status = "sendFormData->ifLoading: getElementById(divID) Error";}
        }
      }
    }
    
    for(i=0; i<document.getElementById(idForm).elements.length - 1; i++)
    {
      strReplaceTemp = document.getElementById(idForm).elements[i].name.replace(/\[\]/i, "");
      
      strAndSymbolTemp = document.getElementById(idForm).elements[i].value;
      var regStr = '&'
      var re = new RegExp(regStr, 'gi');
      strAndSymbolTemp = strAndSymbolTemp.replace(re,"бо");
      
      postData += "&aryFormData["+strReplaceTemp+"][]="+strAndSymbolTemp;
    }
    postData += "&parm="+new Date().getTime();
    try
    {
      if(bFireFoxFlag)
      {
        XMLHttpRequestObject.open("POST", dataSource);
        XMLHttpRequestObject.setRequestHeader("Method", "POST " + dataSource + " HTTP/1.1");
	      XMLHttpRequestObject.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	    }
	    XMLHttpRequestObject.send(postData);
    }
    catch(e){window.status = "sendFormData2: XMLHttpRequestObject.send Error";}
  }
}

function UploadFormData(obj, idForm, dataSource, divID)
{
  document.getElementById(idForm).submit();
  var uploadDir = obj.value;
  var uploader = obj.name;
  try
  {
    var objDiv = parent.document.getElementById(divID);
    objDiv.innerHTML = "<img src=loading.gif>";
  }
  catch(e){}
}

function ProcessData(uploadDir, dataSource, divID)
{
  if(XMLHttpRequestObject)
  {
    dataSource += '&uploadDir='+uploadDir;
    dataSource += '&parm='+new Date().getTime();
    
    XMLHttpRequestObject.open("GET", dataSource);
    XMLHttpRequestObject.onreadystatechange = function()
    {
      try
      {
        if (XMLHttpRequestObject.readyState == 4 &&
            XMLHttpRequestObject.status == 200)
        {
          try
          {
            var objDiv = parent.document.getElementById(divID);
            
            var strTemp1 = XMLHttpRequestObject.responseText;
            //var strTemp2 = strTemp1.replace(/\s+/,'');
            var strTemp2 = strTemp1;
            var strTemp3 = strTemp2.substring(0,11);
            
            if(strTemp2.match("<script>"))
            {
              var AryTemp1 = strTemp2.split("<script>");
              if(AryTemp1.length>0)
              {
                eval(AryTemp1[0]);
                objDiv.innerHTML = AryTemp1[1];
              }
            }
            else
            {
               objDiv.innerHTML = XMLHttpRequestObject.responseText;
            }
            
            if(cleanObject!='')
            {
              /*Don't Work*/
              //var objCleanDiv = parent.document.getElementById(cleanObject);
              //objCleanDiv.fupload1_0.value='';
            }
          }
          catch(e){window.status="ProcessData: getElementById(divID) Error";}
          
        }
        else
        {
          var objDiv = parent.document.getElementById(divID);
          objDiv.innerHTML = "<img src=loading.gif>";
        }
      }
      catch(e){}
    }
    try
    {
      XMLHttpRequestObject.send(null);
    }
    catch(e){}
  }
}

function errUpload(errMsg, divID)
{
  try
  {
    var objDiv = parent.document.getElementById(divID);
    objDiv.innerHTML = "<font color=red>"+errMsg+"</font>";
  }
  catch(e){}
}

function reloadWord(idImage)
{
  var objDiv = document.getElementById(idImage);
  objDiv.src="inc/hippo_sample_image.php?.tmp="+Math.random();
  window.status='';
}

function showDiv(divID)
{
  var objDiv = document.getElementById(divID);
  objDiv.style.display = '';
}

function hideDiv(divID)
{
  document.getElementById(divID).style.display = 'none';
}

function copypast(intIndex)
{
  try
  {
    if(intIndex==1)
    {
      switch(bFlag)
      {
        case 0:
          /*IE*/
          window.clipboardData.clearData();
          window.clipboardData.setData('Text',document.getElementById("copypaste1").value);
          document.getElementById("copypaste1").focus();
          document.getElementById("copypaste1").select();
          alert("Script copied!");
          break;
        default:
          
          break;
      }
    }
    else if(intIndex==2)
    {
      switch(bFlag)
      {
        case 0:
          /*IE*/
          window.clipboardData.clearData();
          window.clipboardData.setData('Text',document.getElementById("copypaste2").value);
          document.getElementById("copypaste2").focus();
          document.getElementById("copypaste2").select();
          alert("Image URL copied!");
          break;
        default:
          break;
      }
    }
  }
  catch(e){window.status='Error: copypast('+intIndex+')';}
}

function selectFunction(keyEvent, divID, dataSource, idParse)
{
  keyEvent = (keyEvent) ? keyEvent: window.event;
  input = (keyEvent.target) ? keyEvent.target : keyEvent.srcElement;
  if (keyEvent.type == "keyup")
  {
    try
    {
      if (input.value)
      {
        dataSource += "?idParse[0]="+idParse+"&idParse[1]="+input.value;
        postData(dataSource, divID, 'false');
      }
    }
    catch(e){}
  }
  else if(keyEvent.type == "change")
  {
    try
    {
      if(input.value)
      {
        var strTemp1 = input.value;   
        if(strTemp1.match("<delimiter1>"))
        {
          var aryTemp1 = strTemp1.split("<delimiter1>");
          if(aryTemp1.length>0)
          {
            dataSource += "?idParse[0]="+idParse;
            for(i=0;i<aryTemp1.length;i++)
            {
              dataSource += "&idParse["+(i+1)+"]="+aryTemp1[i];
            }
            postData(dataSource, divID, 'false');
          }
          else
          {
            dataSource += "?idParse[0]="+idParse+"&idParse[1]="+input.value;
            postData(dataSource, divID, 'false');
          }
        }
        else
        {
          dataSource += "?idParse[0]="+idParse+"&idParse[1]="+input.value;
          postData(dataSource, divID, 'false');
        } 
      }
    }
    catch(e){}
  }
}

function selectFunction1(keyEvent, divID, dataSource, idParse)
{
  keyEvent = (keyEvent) ? keyEvent: window.event;
  input = (keyEvent.target) ? keyEvent.target : keyEvent.srcElement;
  if (keyEvent.type == "keyup")
  {
    try
    {
      if (input.value)
      {
        dataSource += "?idParse[0]="+idParse+"&idParse[1]="+input.value;
        postData(dataSource, divID, 'false');
      }
    }
    catch(e){}
  }
  else if(keyEvent.type == "change")
  {
    try
    {
      if(input.value)
      {
        var strTemp1 = input.value;   
        if(strTemp1.match("<delimiter1>"))
        {
          var aryTemp1 = strTemp1.split("<delimiter1>");
          if(aryTemp1.length>0)
          {
            dataSource += "?idParse[0]="+idParse;
            for(i=0;i<aryTemp1.length;i++)
            {
              dataSource += "&idParse["+(i+1)+"]="+aryTemp1[i];
            }
            var objDiv = document.getElementById("showDiv4");
            objDiv.innerHTML = "<a href="+aryTemp1[3]+" target=_blank><img src="+aryTemp1[1]+" width=32 border=0 alt=\""+aryTemp1[2]+"\"></a>";
            postData(dataSource, divID, 'false');
          }
          else
          {
            dataSource += "?idParse[0]="+idParse+"&idParse[1]="+input.value;
            postData(dataSource, divID, 'false');
          }
        }
        else
        {
          var objDiv = document.getElementById("showDiv4");
          objDiv.innerHTML = "";
          dataSource += "?idParse[0]="+idParse+"&idParse[1]="+input.value;
          postData(dataSource, divID, 'false');
        } 
      }
    }
    catch(e){}
  }
}

function getData(dataSource, divID, ifLoading)
{
  if(XMLHttpRequestObject)
  {
    dataSource += "&parm="+new Date().getTime();
    
    if(!bFireFoxFlag)
    {
      XMLHttpRequestObject.open("GET", dataSource);
    }
    XMLHttpRequestObject.onreadystatechange = function()
    {
      try
      {
        if (XMLHttpRequestObject.readyState == 4 &&
            XMLHttpRequestObject.status == 200)
        {
          try
          {
            var objDiv = document.getElementById(divID);
            var strTemp1 = XMLHttpRequestObject.responseText;
            var strTemp2 = strTemp1;
            //var strTemp2 = strTemp1.replace(/\s+/,'');
            var strTemp3 = strTemp2.substring(0,11);
            
            if(strTemp2.match("<script>"))
            {
              var AryTemp1 = strTemp2.split("<script>");
              if(AryTemp1.length>0)
              {
                eval(AryTemp1[0]);
                objDiv.innerHTML = AryTemp1[1];
              }
            }
            else
            {
               objDiv.innerHTML = XMLHttpRequestObject.responseText;
            }
          }
          catch(e){window.status="getData2: getElementById(divID) Error";}
        }
        else
        {
          if(ifLoading=='true')
          {
            var objDiv = document.getElementById(divID);
            objDiv.innerHTML = "<img src=loading.gif>";
          }
        }
      }
      catch(e){window.status="getData: XMLHttpRequestObject.readyState Error";}
    }
    try
    {
      if(bFireFoxFlag)
      {
        XMLHttpRequestObject.open("GET", dataSource);
      }
      XMLHttpRequestObject.send(null);
    }
    catch(e){window.status="getData: XMLHttpRequestObject.onreadystatechange Error";}
  }
}

function postData(dataSource, divID, ifLoading)
{
  if(XMLHttpRequestObject)
  {
    if(!bFireFoxFlag)
    {
      XMLHttpRequestObject.open("POST", dataSource);
      XMLHttpRequestObject.setRequestHeader("Method", "POST " + dataSource + " HTTP/1.1");
	    XMLHttpRequestObject.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	  }
    
    XMLHttpRequestObject.onreadystatechange = function()
    {
      try
      {
        if (XMLHttpRequestObject.readyState == 4 &&
            XMLHttpRequestObject.status == 200)
        {
          try
          {
            var objDiv = document.getElementById(divID);
            var strTemp1 = XMLHttpRequestObject.responseText;
            var strTemp2 = strTemp1;
            //var strTemp2 = strTemp1.replace(/\s+/,'');
            var strTemp3 = strTemp2.substring(0,11);
            
            if(strTemp2.match("<script>"))
            {
              var AryTemp1 = strTemp2.split("<script>");
              if(AryTemp1.length>0)
              {
                eval(AryTemp1[0]);
                objDiv.innerHTML = AryTemp1[1];
              }
            }
            else
            {
               objDiv.innerHTML = XMLHttpRequestObject.responseText;
            }
          }
          catch(e){window.status="postData: getElementById(divID) Error";}
        }
        else
        {
          if(ifLoading=='true')
          {
            var objDiv = document.getElementById(divID);
            objDiv.innerHTML = "<img src=loading.gif>";
          }
        }
      }
      catch(e){window.status="postData: XMLHttpRequestObject.readyState Error";}
    }
    
    dataSource += "&parm="+new Date().getTime();
    try
    {
      if(bFireFoxFlag)
      {
        XMLHttpRequestObject.open("POST", dataSource);
        XMLHttpRequestObject.setRequestHeader("Method", "POST " + dataSource + " HTTP/1.1");
	      XMLHttpRequestObject.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	    }
      XMLHttpRequestObject.send(dataSource);
    }
    catch(e){window.status="postData: XMLHttpRequestObject.onreadystatechange Error";}
  }
}