var Chat = {
 Interval: 10000,
 ContainerPrefix: "CHT_",

 Start: function(Starter, Invited)
 {
  Chat.Interval = 1000;

  var RandomLeft = Math.floor(Math.random()*70);

  var NewWindow = "<div id='"+Chat.ContainerPrefix+"Main"+Starter+Invited+"' class='Chat_Main' style='left: "+RandomLeft+"%'><p id='"+Chat.ContainerPrefix+"Header"+Starter+Invited+"' class='Chat_Header'><a href='' onclick='Chat.Close(\""+Starter+"\", \""+Invited+"\"); return false;' class='Chat_Close'>X</a></p><div id='"+Chat.ContainerPrefix+"Messages"+Starter+Invited+"' class='Chat_Messages'>Chatting with "+Invited+"...<br /><br /></div><div class='Chat_Form'><input id='"+Chat.ContainerPrefix+"Field"+Starter+Invited+"' type='text' class='Chat_Field' /> <input id='"+Chat.ContainerPrefix+"Submit"+Starter+Invited+"' type='button' value='Send' class='Chat_Submit' onclick='Chat.Send(\""+Starter+"\", \""+Invited+"\");' /></div></div>";

  $("body").append(NewWindow);
  var Container = $("#"+Chat.ContainerPrefix+"Main"+Starter+Invited);
  Container.draggable({handle: 'p'});
 },

 Close: function(Starter, Invited)
 {
  $("#"+Chat.ContainerPrefix+"Main"+Starter+Invited).remove();

  var Chats = $("div.Chat_Main");
  
  if(Chats.length == 0)
  {
   Chat.Interval = 10000;
  }
 },

 Send: function(Starter, Invited)
 {
  var Field = $("#"+Chat.ContainerPrefix+"Field"+Starter+Invited);
  var Messages = $("#"+Chat.ContainerPrefix+"Messages"+Starter+Invited);

  if(Field.val() != "")
  {
   Message = encodeURIComponent(Field.val());

   $.post(Cfg['Environment']['BaseURL']+"AJAX/Content/Chat/Send.php", {CStarter: Starter, CInvited: Invited, CMessage: Message}, function(Data){
    Messages.append(Data);
    Messages.attr({scrollTop: Messages.attr("scrollHeight")});
   }, "text");

   Field.val("");
  }
 },

 Watch: function(Invited)
 {
  $.post(Cfg['Environment']['BaseURL']+"AJAX/Content/Chat/Watch.php", {CInvited: Invited}, function(J){

   for(var I=0; I<J.length; I++)
   {
    var Messages = $("#"+Chat.ContainerPrefix+"Messages"+Invited+J[I].Starter);

    if(Messages.length == 0)
    {
     Chat.Start(Invited, J[I].Starter);

     var Messages = $("#"+Chat.ContainerPrefix+"Messages"+Invited+J[I].Starter);
    }

    Messages.append("<strong>"+J[I].Starter+"</strong>: "+J[I].Message+"<br />");
    Messages.attr({scrollTop: Messages.attr("scrollHeight")});
   }

  }, "json");

  setTimeout("Chat.Watch('"+Invited+"')", Chat.Interval);
 }
           }
