//version:1.0
//author: BrianChao
//locale : taiwan

function XmlHttpUtil(url){
//***********************************property****************************************************
  this.url = url;
  this.responseText = null;
  this.postValue = null;

//*************************************method***************************************************
 this.post = flow_PostServiceViaXmlHttp;

 this.setParameter = flow_SetParameter;

 this.getResponseText = flow_getResponseText;

}

//Purpose:使用HTTP去server端要資料
function flow_PostServiceViaXmlHttp(){
 var xmlHttpB = new ActiveXObject("Microsoft.XMLHTTP");
 xmlHttpB.open("POST", this.url, false);
 xmlHttpB.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset:utf-8");

 if(this.postValue!=null)
    xmlHttpB.send(this.postValue);
 else
    xmlHttpB.send();

 if((xmlHttpB.status==200)){
     try{
      this.responseText = trim(xmlHttpB.responseText).split("\n").join("").split("\r").join("");
     }
     catch(e){
     }
 }
}//function

function flow_SetParameter(postValue){
  this.postValue = postValue;
}

function flow_getResponseText(){
  return this.responseText;
}

function trim(inputString) {
   // Removes leading and trailing spaces from the passed string. Also removes
   // consecutive spaces and replaces it with one space. If something besides
   // a string is passed in (null, custom object, etc.) then return the input.
   if (typeof inputString != "string") { return inputString; }
   var retValue = inputString;
   var ch = retValue.substring(0, 1);
   while (ch == " ") { // Check for spaces at the beginning of the string
      retValue = retValue.substring(1, retValue.length);
      ch = retValue.substring(0, 1);
   }
   ch = retValue.substring(retValue.length-1, retValue.length);
   while (ch == " ") { // Check for spaces at the end of the string
      retValue = retValue.substring(0, retValue.length-1);
      ch = retValue.substring(retValue.length-1, retValue.length);
   }
   while (retValue.indexOf("  ") != -1) { // Note that there are two spaces in the string - look for multiple spaces within the string
      retValue = retValue.substring(0, retValue.indexOf("  ")) + retValue.substring(retValue.indexOf("  ")+1, retValue.length); // Again, there are two spaces in each of the strings
   }
   return retValue; // Return the trimmed string back to the user
} // Ends the "trim" function

