String.prototype.urlencode = function() { return encodeURIComponent( this ); };

var XMLHttpRequestObject = createXMLHttpRequestObject();

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) {}
    }
  }
  
  if (!XMLHttpRequestObject)
  {
    alert("Error: failed to create the XMLHttpRequest object.");
  }
  else 
  {
    return XMLHttpRequestObject;
  }
}



function getData(url, divID)
{
	$.get( url , function(data) {  $("#"+divID).get(0).innerHTML = data; } );
}


function postData(dataSource, divID)
{
  if(XMLHttpRequestObject)
  {
    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)
        {
		  var objDiv = document.getElementById(divID);
          objDiv.innerHTML = XMLHttpRequestObject.responseText;
        }
      }
      catch(e){}
    }

    dataSource += "&parm="+new Date().getTime();
    try
    {
      XMLHttpRequestObject.send(dataSource);
    }
    catch(e){}
  }
}


function sendFormData(idForm, dataSource, divID , ADDdiv)
{
  var postData='';
  var strReplaceTemp;
  if(XMLHttpRequestObject)
  {
    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
        {
			switch(XMLHttpRequestObject.readyState)
			{
			  case 4:
				if(XMLHttpRequestObject.status == 200)
				{
				  var objDiv = document.getElementById(divID);
				  if( ADDdiv == 'after' ){
					  objDiv.innerHTML += XMLHttpRequestObject.responseText;
					  document.getElementById('loading_img').innerHTML = '';
				  }else{
					  objDiv.innerHTML = XMLHttpRequestObject.responseText;
				  }
				}
				else
				{
				  objDiv.innerHTML = 'Error...';
				}
				break;
			}
        }
        catch (e) {}
    }
    
    for(i=0; i<document.getElementById(idForm).elements.length; i++)
    {
		if (document.getElementById(idForm).elements[i].type == "checkbox" || document.getElementById(idForm).elements[i].type == "radio"){
			if ( document.getElementById(idForm).elements[i].checked == true ){
				strReplaceTemp = document.getElementById(idForm).elements[i].name.replace(/\[\]/i, "");
				postData += "&aryFormData["+strReplaceTemp+"][]="+document.getElementById(idForm).elements[i].value.urlencode();
			}
		}else{
			strReplaceTemp = document.getElementById(idForm).elements[i].name.replace(/\[\]/i, "");
			postData += "&aryFormData["+strReplaceTemp+"][]="+document.getElementById(idForm).elements[i].value.urlencode();
		}

    }
    
    postData += "&parm="+new Date().getTime();
    try
    {
      XMLHttpRequestObject.send(postData);
    }
    catch (e) {}
  }
}



function ProcessData(uploadDir, dataSource, divID, widthThumb, heightThumb)
{
  if(XMLHttpRequestObject)
  {
    dataSource += '&uploadDir='+uploadDir;
    dataSource += '&widthThumb='+widthThumb;
    dataSource += '&heightThumb='+heightThumb;
    dataSource += '&parm='+new Date().getTime();
    
    XMLHttpRequestObject.open("GET", dataSource);
    XMLHttpRequestObject.onreadystatechange = function()
    {
      try
      {
        if (XMLHttpRequestObject.readyState == 4 &&
            XMLHttpRequestObject.status == 200)
        {
          var objDiv = parent.document.getElementById(divID);
          objDiv.innerHTML = XMLHttpRequestObject.responseText;
          /*eval(XMLHttpRequestObject.responseText);*/
        }
        else
        {
          in_loading_img(divID);
        }
      }
      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 ajax_postData( dataSource , divID , loading_div) {
	if(loading_div=='')loading_div = divID;
    in_loading_img(loading_div);
	setTimeout("postData('"+dataSource+"', '"+divID+"');",100);
}
/*
function ajax_getData( dataSource , divID , loading_div) {
	if(loading_div=='')loading_div = divID;
    in_loading_img(loading_div);
	setTimeout("getData('"+dataSource+"', '"+divID+"');",100);
}
*/


function ajax_sendFormData( idForm , dataSource , divID , loading_div , ADDdiv) {
	if(loading_div=='')loading_div = divID;
    in_loading_img(loading_div);
	setTimeout("sendFormData('"+idForm+"', '"+dataSource+"', '"+divID+"', '"+ADDdiv+"');",100);
}

function ajax_post_ifram( idForm , divID , loading_div )
{
	if(loading_div=='')loading_div = divID;
	in_loading_img(loading_div);
	setTimeout("document.getElementById('"+idForm+"').submit();",100);
	setTimeout("hide_loading_img('"+loading_div+"');",1000);
}


function ajax_post_ifram_back( idForm , loading_DIV , finish_get , finish_div)
{
	in_loading_img(loading_DIV);
	try
	{
		setTimeout("document.getElementById('"+idForm+"').submit();",100);
	}
	catch(e){}
	setTimeout("getData('"+finish_get+"','"+finish_div+"');",5000);
}


