
function open_chat_window(url)
{
  window.open(url, '_blank', 'width=640,height=480');
}

function chat_invitation_is_visible()
{
  var div = document.getElementById('chat-invitation-holder');
  if (div.style.display == "block")
    return true;
  return false;
}

function chat_respond_invitation(url)
{
  var div = document.getElementById('chat-invitation-holder');
  div.style.display = "none";
  open_chat_window(url);
}

function chat_close_invitation(url)
{
  var div = document.getElementById('chat-invitation-holder');
  div.style.display = "none";
}

function chat_show_invitation(u_chat_invitation)
{
  var url = "chat_window.pl?session_id=" + u_chat_invitation;

  var div = document.getElementById('chat-invitation-holder');
  div.style.position = 'absolute';
  div.style.zIndex = "1000";
  div.style.top = '10px';
  div.style.left = '10px';
  div.style.width = '300px';
  div.style.height = '100px';
  div.style.backgroundColor = '#fff';
  div.style.border = '2px solid #000';
  div.style.padding = '2px';
  div.style.margin = '2px';
  div.innerHTML = "<a href='#' onClick=\"chat_respond_invitation('" + url + "');\">chat invitation</a>";
  div.style.display = 'block';
}

function chat_check_invitation()
{
  if (chat_invitation_is_visible())
    return;

  var req = create_http_request();
  req.open('POST', 'chat_check_invite.pl?r=' + Math.random(), false);
  req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
  req.send('');
  try {
    var doc = req.responseXML;
    var invite = doc.getElementsByTagName('invitation')[0];
    if (invite != null) {
      var children = invite.childNodes;
      for (var i = 0; i < children.length; i++) {
        if (children[i].nodeType == 3) {
          chat_show_invitation(children[i].nodeValue);
          break;
        }
      }
    }
  } catch (e) {
    alert(e);
  }
}

function chat_start_invitation_check()
{
  setInterval(chat_check_invitation, 60000);
}

