top.highlighted_row = null;

function updateClientResults(client_type) {
  top.highlighted_row = null;
  if(client_type == "Buyer" || client_type == "Seller"){
    document.getElementById("client_name_label").innerHTML = "First Name/Last Name:";
    document.getElementById("client_first_name").style.display = "inline";
    document.getElementById("client_last_name").style.display = "inline";
    document.getElementById("client_name").style.display = "none";
  }
  else{
    document.getElementById("client_name_label").innerHTML = "Name:";
    document.getElementById("client_first_name").style.display = "none";
    document.getElementById("client_last_name").style.display = "none";
    document.getElementById("client_name").style.display = "inline";
  }
  document.getElementById("clientResults").src = "client_results.php?type="+$F('client_type');
}

function updateMergeResults(type){
  new Ajax.Updater(
      {success: 'merge_results'},
      "merge_results.php",
      {method: 'get', parameters: { client_type: type }, onFailure: reportError});
}

function reportError(request) {
$F('merge_results') = "Error";
}

function check_mergeoptions(){
  var mergeto_num=0;
  var mergefrom_num=0;
  for (counter = 0; counter < merge.merge_to.length; counter++){
    if (merge.merge_to[counter].checked){ mergeto_num++; }
  }
  for (counter = 0; counter < merge.merge_from.length; counter++){
    if (merge.merge_from[counter].checked){ mergefrom_num++; }
  }
  if(mergeto_num != 1){
    alert("Only one Merge To row can be selected.");
    return false;
  }
  if(mergefrom_num < 1){
    alert("At least one Merge From row must be selected.");
    return false;
  }
  return true;
}

function rowSelected(action) {
    if(action == "edit"){
      if(document.getElementById('client_id').value == 0){
        alert("Please select a client before clicking the Edit/View button.");
        return false;
      }
      else{
        return true;
      }
    }
    if(action == "add"){
      var error = false;
      var client_type = document.getElementById('client_type').value;
      
      if(client_type == "Buyer" || client_type == "Seller"){
        if(document.getElementById('client_first_name').value == "" && document.getElementById('client_last_name').value == ""){ error = true; }
      }
      else{
        if(document.getElementById('client_name').value == ""){ error = true; }
      }
      if(error){
        alert("Please enter a Name before clicking the Add New button.");
        return false;
      }
      else{
        document.getElementById('client_id').value = 0;
        return true;
      }
    }
}



function find_client_frame() {
    var client_type = parent.document.getElementById('client_type').value;
    var params = "client_type="+client_type+"&";
    if(client_type == "Buyer" || client_type == "Seller"){
      var client_first_name = parent.document.getElementById('client_first_name').value;
      var client_last_name = parent.document.getElementById('client_last_name').value;
      params += "client_first_name="+client_first_name+"&client_last_name="+client_last_name;
    }
    else{
      var client_name = parent.document.getElementById('client_name').value;
      params += "client_name="+client_name;
    }

    new Ajax.Request("lookup_clientid.php", {
        method: 'get',
        parameters: params,
        onSuccess: process_frame,
        onFailure: function() { 
        alert("There was an error with the connection"); 
      }
    });
}

function process_frame(transport) {
  var anchorName = "row-"+transport.responseText;
  highlightRow(anchorName);
  var scrollY=document.getElementById(anchorName).offsetTop;
  scrollTo(0,scrollY);
}

function keyJumper() {
  find_client();
}

function find_client() {
  var params = "client_type="+$F('client_type')+"&";
  if($F('client_type') == "Buyer" || $F('client_type') == "Seller"){
    params += "client_first_name="+$F('client_first_name')+"&client_last_name="+$F('client_last_name');
  }
  else{
    params += "client_name="+$F('client_name');
  }

    new Ajax.Request("lookup_clientid.php", {
        method: 'get',
        parameters: params,
        onSuccess: process,
        onFailure: function() { 
        alert("There was an error with the connection"); 
      }
    });
}

function process(transport) {
  var anchorName = "row-"+transport.responseText;
  highlightFrameRow(anchorName);
  var scrollY=parent.frames['clientResults'].document.getElementById(anchorName).offsetTop;
  parent.frames['clientResults'].scrollTo(0,scrollY);
}
 
function highlightRow(id) {
  var current_row = $(id);
  
  if(top.highlighted_row != null){ top.highlighted_row.className = ""; }
  current_row.className = "db_table_row_highlight";
  top.highlighted_row = current_row;
  
  var rowid = id.split("-");
  parent.document.getElementById('client_id').value = rowid[1];
}

function highlightFrameRow(id) {
  var frameObj = document.getElementById("clientResults").contentWindow;
  var current_row = frameObj.$(id);

  if(top.highlighted_row != null){ top.highlighted_row.className = ""; }
  current_row.className = "db_table_row_highlight";
  top.highlighted_row = current_row;

  var rowid = id.split("-");
  document.getElementById('client_id').value = rowid[1];
}

function openLocateClient(type,url,fieldname){
  var id = document.getElementById(fieldname).value;
	url = url + '?from=order&type='+type+'&id='+id;
	params  = 'scrollbars=1, width='+(screen.width*.9)+', height='+(screen.height*.9);

	window.open(url,'locate_client',params);
}

function updateOrder(id) {
  var orig_type = parent.document.getElementById("orig_client_type").value.toLowerCase();
  var field = parent.document.getElementById("client_type").value.toLowerCase();
  
  if(top.opener != null){
    var container = top.opener.document.getElementById(field+'_id_container');
    if(field == orig_type){
      var fieldid = id.split("-");
      top.opener.document.getElementById(field+'_id').value = fieldid[1];
      top.opener.document.getElementById(field+'_id_current_name').value = $(id).down('td',0).innerHTML;
      var content = "<a href='mailto:"+$(id).down('td',5).innerHTML+"'>"+$(id).down('td',0).innerHTML+"</a>";
      var copyback=top.opener.document.getElementById(field+'_id_copyback').value;
      if(copyback.indexOf('phone') >= 0){
        content += "<br>"+$(id).down('td',3).innerHTML;
      }
      container.innerHTML = content;
      top.window.close();
    }
    else if(orig_type != ""){
      alert("Client selected must be of type: "+orig_type);
    }
  }
}