//Start ajax by calling this function: open_rate()

function open_rate(pattern_id, obj, event)
{
  initialize_ajax();
  coordinates = get_coordinates(obj, event);

  var url="ancillary/ajax_return_rate.php?pattern_id="+pattern_id;
  if(ajax_request != null)
    {
      ajax_request.onreadystatechange = process_ajax_rate;
      ajax_request.open("GET", url, true);
      ajax_request.send(null);
    }
  return true;
}

function post_rate(pattern_id, rating)
{
  initialize_ajax();

  var url="ancillary/ajax_return_rate.php?pattern_id="+pattern_id+"&rating="+rating;
  if(ajax_request != null)
    {
      ajax_request.onreadystatechange = process_ajax_rate;
      ajax_request.open("GET", url, true);
      ajax_request.send(null);
    }
  return true;
}

function process_ajax_rate()
{
  if (ajax_request.readyState == 4)
    {
      // only if "OK"
      if (ajax_request.status == 200)
        {
          if(ajax_request.responseText != "")
            {
              show_rate_information(ajax_request.responseText);
            }
        }
      else {
        //alert("There was a problem retrieving data:<br />"+ajax_request.statusText);
      }
    }
}

//*****************************
//Topic specific functions
//*****************************

function show_rate_information(topic_data)
{
  var left = 0;
  var top = 0;
  var left_offset = 400;
  var top_offset = -200;

  var width_max = 550;

  rate_space_ref = get_ref_to_id("rate_space");

  var temp = coordinates.split(":"); //global variable
  var x_coordinate = temp[0];
  var y_coordinate = temp[1];

  //Convert to numbers
  x_coordinate = x_coordinate * 1;
  y_coordinate = y_coordinate * 1;
  while (x_coordinate > width_max)
    {
      x_coordinate = x_coordinate-1;
    }
  rate_space_ref.innerHTML = topic_data;

  if( rate_space_ref ) {
    if( rate_space_ref.style ) { rate_space_ref = rate_space_ref.style; }
    rate_space_ref.display = "block";
    left = x_coordinate + left_offset;
    rate_space_ref.left = left + 'px';
    top = y_coordinate + top_offset + click_top; //click_top is a global variable
    rate_space_ref.top = top + 'px';
  }
}

function hide_rate_div()
{
  rate_space_ref = get_ref_to_id("rate_space");

  if( rate_space_ref ) {
    if( rate_space_ref.style ) { rate_space_ref = rate_space_ref.style; }
    rate_space_ref.display="none";
  }
}
