var onLoads=new Array();

function addOnLoad(script){
	onLoads[onLoads.length]=script;
}

function processOnLoad(){
	for (var i=0; i<onLoads.length; i++){
		try{
			eval(onLoads[i]);		
		}catch(e){
			//alert(e);
		}
	}
}

window.onload=processOnLoad;


//=================================================

//negotiators
var negotiators=new Array();

function negotiator(officeName,office,personID,firstName,lastName){
	this.officeName=officeName;
	this.office=office;
	this.personID=personID;
	this.firstName=firstName;
	this.lastName=lastName;
	return this
}

function populateNegotiatorDropDown(clientID,office){
	var Add='true';//
	var obj=document.getElementById(clientID);
	if (obj.getAttribute('OriginalOffice')==null){ Add='False'}//
	var x = 0;


	obj.options.length = 0;

	if (obj.getAttribute('AllowAllSelector') == 'True' || obj.getAttribute('AllowAllSelector') == 'true') {
	    var o = new Option('-- all --', -1);
	    obj.options[x] = o;
	    x++;
	} 
	
	/*if (obj.getAttribute('AllowAllSelector') == 'True' || obj.getAttribute('AllowAllSelector') == 'true') {
	   var o = new Option('-- all --', -1);
	   obj.options[x] = o;
	   x++;
    } else if (obj.getAttribute('AllowPleaseSelect') == 'True' || obj.getAttribute('AllowPleaseSelect') == 'true') {
        var o = new Option('-- please select --', -1);
        obj.options[x] = o;
        x++;
   }*/
   
   if (office) {
       if (office.indexOf(',') == -1) {
           for (var i = 0; i < negotiators.length; i++) {
               if (office == negotiators[i].office) {
                   var o = new Option(negotiators[i].firstName + ' ' + negotiators[i].lastName, negotiators[i].personID);
                   obj.options[x] = o;
                   x++;
               }
           }
       } else {
           var officeArr = office.split(",");
           for (var j = 0; j < officeArr.length; j++) {
               for (var i = 0; i < negotiators.length; i++) {
                   if (officeArr[j] == negotiators[i].office) {
                       var add = true;
                       for (var k = 0; k < obj.options.length; k++) {
                           if (negotiators[i].personID == obj.options[k].value)
                               add = false;
                       }
                       if (add == true) {
                           var o = new Option(negotiators[i].firstName + ' ' + negotiators[i].lastName, negotiators[i].personID);
                           obj.options[x] = o;
                           x++;
                       }
                   }
               }
           }
       }
   }
	sortSelect(obj, true);
	for (var i=0; i<obj.options.length; i++){		
		if (obj.getAttribute('NegotiatorID')==obj.options[i].value){ 
			obj.selectedIndex=i;
		}
	}
	for (var i=0; i<obj.options.length; i++){		// from here
			if (obj.getAttribute('NegotiatorID')==obj.options[i].value){ 
				obj.selectedIndex=i;
				Add='false';
			}
		}// to here
	if (obj.onchange) obj.onchange;
	var oriOffice=obj.getAttribute('OriginalOffice')// from here
		for (var i=0; i<negotiators.length; i++){
				if (negotiators[i].office==oriOffice){
					if(negotiators[i].personID==obj.getAttribute('NegotiatorID')){
						Add='False'
					}
				}
			}
		if (oriOffice!=office){Add='False'};
	if (Add=='true') {
		if(obj.getAttribute('NegotiatorID')!=null && obj.getAttribute('NegotiatorName')!=null){
			var o = new Option(obj.getAttribute('NegotiatorName'),obj.getAttribute('NegotiatorID'));
			o.style.color = "red";
			obj.options[x]=o;
			obj.selectedIndex=obj.options.length -1
		}
	} // to here
}

function sortFuncAsc(record1, record2) {
    var value1 = record1.optText.toLowerCase();
    var value2 = record2.optText.toLowerCase();
    if (value1 > value2) return (1);
    if (value1 < value2) return (-1);
    return (0);
}

function sortFuncDesc(record1, record2) {
    var value1 = record1.optText.toLowerCase();
    var value2 = record2.optText.toLowerCase();
    if (value1 > value2) return (-1);
    if (value1 < value2) return (1);
    return (0);
}

function sortSelect(selectToSort, ascendingOrder) {
    if (arguments.length == 1) ascendingOrder = true;
    var myOptions = [];
    for (var loop = 0; loop < selectToSort.options.length; loop++) {
        myOptions[loop] = { optText: selectToSort.options[loop].text, optValue: selectToSort.options[loop].value };
    }

    if (ascendingOrder) {
        myOptions.sort(sortFuncAsc);
    } else {
        myOptions.sort(sortFuncDesc);
    }

    selectToSort.options.length = 0;
    for (var loop = 0; loop < myOptions.length; loop++) {
        var optObj = document.createElement('option');
        optObj.text = myOptions[loop].optText;
        optObj.value = myOptions[loop].optValue;
        selectToSort.options.add(optObj);
    }
}
