function MultiSelector(list_target, max) {

    this.list_target = list_target;
    this.count = 0;
    this.id = 0;

    if(max) {
        this.max = max;
    } else {
        this.max = -1;
    };
    
    this.addElement = function(element) {
        if(element.tagName == 'INPUT' && element.type == 'file') {
            element.name = 'file_' + this.id++;
            element.multi_selector = this;
            element.onchange = function() { 
                var new_element = document.createElement('input');
                new_element.type = 'file';
                this.parentNode.insertBefore(new_element, this);
                this.multi_selector.addElement(new_element);
                this.multi_selector.addListRow(this);
                this.style.position = 'absolute';
                this.style.left = '-1000px';
            };
            if(this.max != -1 && this.count >= this.max) {
                element.disabled = true;
            };
            
            this.count++;
            this.current_element = element;
        } else {
            alert( 'Error: not a file input element' );
        };
    };
    this.addListRow = function(element) {
        var new_row = document.createElement( 'div' );
        var new_row_button = document.createElement( 'input' );
        new_row_button.type = 'button';
        new_row_button.value = 'Delete';
        new_row.element = element;
        new_row_button.onclick= function() { 
            this.parentNode.element.parentNode.removeChild(this.parentNode.element);
            this.parentNode.parentNode.removeChild(this.parentNode);
            this.parentNode.element.multi_selector.count--;
            this.parentNode.element.multi_selector.current_element.disabled = false;
            return false;
        };
        constructed = "<b>" + element.value + "</b> &nbsp;";
        constructed += "<select id='" + element.name + "_location' name='" + element.name + "_location'>";
        constructed += "<option value='left'>left</option>";
        constructed += "<option value='top'>top</option>";
        constructed += "<option value='right'>right</option>";
        constructed += "<option value='bottom'>bottom</option>";
        constructed += "</select> &nbsp; ";
        new_row.innerHTML = constructed;
        new_row.appendChild( new_row_button );
        this.list_target.appendChild(new_row);
    };

};

function deleteLogo(basedir, business_id, token){

  if((basedir.length==0) || (business_id.length==0)){ 
    return;
  }
  xmlHttp=GetXmlHttpObject();
  var params = "id="+business_id+"&token="+token;
  var url = basedir+"/profile/logo_delete/";

  xmlHttp.open("POST", url, true);

    xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");

  xmlHttp.onreadystatechange=function() { 
    if((xmlHttp.readyState==4) && (xmlHttp.status == 200)) {
        document.getElementById("token").value=xmlHttp.responseText;
        if(xmlHttp.responseText != "0")  {
            document.getElementById("oldlogo").innerHTML="<b>None</b>"; 
        }
    }
  };

  xmlHttp.send(params);
}

function deleteAd(basedir, ad_id, token){

  if((basedir.length==0) || (ad_id.length==0)){ 
    return;
  }
  xmlHttp=GetXmlHttpObject();
  var params = "id="+ad_id+"&token="+token;
  var url = basedir+"/profile/ad_delete/";

  xmlHttp.open("POST",url,true);

    xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");

  xmlHttp.onreadystatechange=function() { 
    if((xmlHttp.readyState==4) && (xmlHttp.status == 200)) {
        document.getElementById("token").value=xmlHttp.responseText;
        if(xmlHttp.responseText != "0")  {
            document.getElementById("ad_" + ad_id).innerHTML=""; 
        }
    }
  };

  xmlHttp.send(params);
}

function GetXmlHttpObject(){

    var xmlHttp = null;
    try {
        xmlHttp=new XMLHttpRequest(); // Firefox, Opera 8.0+, Safari
    } catch (e) {
        try { // Internet Explorer
            xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e) {
            xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
        }
    }
    return xmlHttp;

}