
/*
 * CODE : Base Functions
 */

 /* Strings */
 
function BaseReplace(strInput, strSource, strTarget)
{
  return strInput.replace(new RegExp(strSource, "g"), strTarget);
}

function BaseContains(strBig, strSmall)
{
  var theResult = strBig .indexOf(needle, 0);
  return theResult === -1 ? false : true;
}

/* Redirect and Pop Up */

function BaseRedir(strUrl)
{
  window.location.replace(strUrl);
}

function BaseRedirClick(strUrl)
{
  window.location.href = strUrl;
}

/* Cookies */

function BaseSetCookie(strCookieName, strCookieValue, iCookieDays)
{
var exdate=new Date();
exdate.setDate(exdate.getDate() + iCookieDays);
var c_value=escape(strCookieValue) + ((iCookieDays==null) ? "" : "; expires="+exdate.toUTCString());
document.cookie=strCookieName + "=" + c_value;
}

function BaseGetCookie(strCookieName)
{
  var i,x,y,ARRcookies=document.cookie.split(";");
  for (i=0;i<ARRcookies.length;i++)
  {
    x=ARRcookies[i].substr(0,ARRcookies[i].indexOf("="));
    y=ARRcookies[i].substr(ARRcookies[i].indexOf("=")+1);
    x=x.replace(/^\s+|\s+$/g,"");
    if (x==strCookieName)
    {
      return unescape(y);
    }
  }
}

function BaseDeleteCookie(strCookieName)
{
  BaseSetCookie(strCookieName, "", -1);
}

/* Ajax */

function ConvertAjaxForm(formName)
{
  var getstr = "";
  obj = document.getElementById(formName);
  for (i=0; i<obj.elements.length; i++) {
     if (obj.elements[i].tagName.toLowerCase() == "input")
     {
        switch(obj.elements[i].type.toLowerCase()){
        case "checkbox":
           if (obj.elements[i].checked) { getstr += obj.elements[i].name + "=" + obj.elements[i].value + "*amp;amp;*";}
           break;
        case "radio":
           if (obj.elements[i].checked) {getstr += obj.elements[i].name + "=" + obj.elements[i].value + "*amp;amp;*";}
           break;
        default:
          getstr += obj.elements[i].name + "=" + obj.elements[i].value + "*amp;amp;*";
        }
     }
     if (obj.elements[i].tagName.toLowerCase() == "select") {
        var sel = obj.elements[i];
        if (sel.options[sel.selectedIndex].value != "")
        {
            getstr += sel.name + "=" + sel.options[sel.selectedIndex].value + "*amp;amp;*";
        }
        else
        {
            getstr += sel.name + "=" + sel.options[sel.selectedIndex].innerText + "*amp;amp;*";
        }

     }
     if (obj.elements[i].tagName.toLowerCase() == "textarea") {
        getstr += obj.elements[i].name + "=" + obj.elements[i].value + "*amp;amp;*";
     }
  }
  return getstr
}

function MakeAjaxCall(fileName,params,newFunc,errFunc)
{
  if (!params){params = "";}
  var xmlhttp0=null;
  if (window.XMLHttpRequest)
    {xmlhttp0=new XMLHttpRequest();}
  else if (window.ActiveXObject)
    {xmlhttp0=new ActiveXObject("MSXML2.XMLHTTP.3.0");}
  if (xmlhttp0!=null)
    {
      xmlhttp0.open("post",fileName,true);
      xmlhttp0.setRequestHeader("Content-type", "application/x-www-form-urlencoded;");
      xmlhttp0.setRequestHeader("Content-length", params.length);
      xmlhttp0.onreadystatechange=function()
      {
        if (xmlhttp0.readyState==4)
        {          
          if (xmlhttp0.status==200)
          {            
            if(newFunc){newFunc(xmlhttp0.responseText);}
          }
          else
          {if(errFunc){errFunc(xmlhttp0.responseText);}}
        }
      }
      params = hebUni(params);
      xmlhttp0.send(params);
    }
  else
    {alert("Your browser does not support XMLHTTP.");}
}

function hebUni(a)
{
  var arrList = a.split("*amp;amp;*")
  var allUrl = ""
  for (x=0;x<arrList.length;x++)
  {
    var eqNum = arrList[x].indexOf("=")
    var v1 = arrList[x].substr(0,eqNum)
    var v2 = arrList[x].substr(eqNum+1)
    if (allUrl == "") allUrl = v1 + "=" + escape(v2)
    else allUrl += "&"+v1 + "=" + escape(v2)
  }

  return allUrl
}

