//var ChtAjaxObj = null;
var ChtRefresh = 0;
var SysInterval = 0;
var ChtInterval = 30;
var Msgs = Array();

Msgs[0] = "You can't change the past, but you can ruin the present by worrying about the future.";
Msgs[1] = "Work like you don't need the money.<br />Love like you've never been hurt.<br />Dance like nobody is watching<br /> --Mark Twain";
Msgs[2] = "All you send into the lives of others, comes back into your own!";
Msgs[3] = "Beam me up Scotty, there is no intelligent life on this planet.";
Msgs[4] = "Keine Hexerei, nur Filurendreierei";
Msgs[5] = "People will not remember what you said,<br />People will not remember what you did,<br />But people will remember how you made them feel.";
Msgs[6] = "Life is not a journey to the grave with the intention of arriving safely in a pretty and well preserved body, but rather to skid in broadside, thoroughly used up, totally worn out, and loudly proclaiming --<br />WOW--What a Ride!";
Msgs[7] = "If you understand what you're doing, you're not learning anything.";
Msgs[8] = "What is life, except excuse for death,<br />or death, but an escape from life.";
Msgs[9] = "If you don't know where you're trying to go, it doesn't matter which route you take.";
Msgs[10] = "A computer is like air conditioning: it becomes useless when you open windows.";
Msgs[11] = "For en mand med en ny hammer kommer alt til at ligne søm!";
Msgs[12] = "Det er ikke mange mennesker, der går ned i en butik for at købe et bor, fordi de har brug for et bor... De køber et bor, fordi de har brug for et hul.";
Msgs[13] = "Hvorfor skal man sige undskyld, når man har sagt hov?";
Msgs[14] = "Det jeg savner mest af det jeg har glemt er min hukommelse.";

function ChtMakeAjax() {
   try { oReq = new XMLHttpRequest(); }                         // Mozilla, Safari, IE7...
   catch(e) {
      try { oReq = new ActiveXObject("MSXML2.XMLHTTP.3.0"); }   // ældre IE
      catch(e) {
         try { oReq = new ActiveXObject("Microsoft.XMLHTTP"); } // Andre - sidste desperate forsøg...
         catch(e) { oReq = null; }
         }
      }
   if ( oReq == null) { alert( 'Din browser kan ikke AJAXe'); }
   return oReq;
   }

function DoAjaxCht( prg, data) {
	o_img = document.getElementById( 'cht_chk');
	if ( o_img) { o_img.style.visibility = 'visible'; }
   ChtAjaxObj = ChtMakeAjax();
   if ( ChtAjaxObj != null) {
      ChtAjaxObj.open( 'post', prg, false);
      ChtAjaxObj.setRequestHeader( 'Content-Type', 'application/x-www-form-urlencoded');
	 	nav = window.navigator.appName;
		if ( nav.indexOf( 'Netscape') > -1) {
			ChtAjaxObj.onload = function() { AjaxChtDone( ChtAjaxObj); };
			}
		else {
			ChtAjaxObj.onreadystatechange = function() { AjaxChtDone( ChtAjaxObj); };
			}
      ChtAjaxObj.send( data);
      }
	if ( o_img) { o_img.style.visibility = 'hidden'; }
   }

function AjaxChtDone( AObj) {
   if ( AObj.readyState == 4) {
      if ( AObj.status == 200) {
			ChtRes = document.getElementById( 'ajax_chat');
			ChtOn = document.getElementById( 'ajax_chat_users');
			// Her indsættes kode der behandler de returnerede data
			if ( AObj.responseText.indexOf( '[msgs]') > -1) {
				returnStr = ChtAjaxObj.responseText.split( '[msgs]', 2);
				}
			else {
				returnStr = Array( '', AObj.responseText);
				}
			if ( ChtOn != null) {
				ChtOn.innerHTML = returnStr[0];
				ChtOn = null;
				}
			if ( ChtRes != null) {
				ChtRes.innerHTML += returnStr[ 1];
				ChtRes.scrollTop = ChtRes.scrollHeight;
				ChtRes = null;
				}
         }
      else { 
         alert( 'AJAX fejl:\n'+'Status: '+ChtAjaxObj.status+'\nBeskr: '+ChtAjaxObj.statusText);
         }
      }
   }


function ChtSend() {
	cm_elem = document.getElementById( 'ch_msg');
	m_val = cm_elem.value;
	if ( m_val != '') {
		m_navn = cm_elem.name;
		cn_elem = document.getElementById( 'ch_nick');
		n_navn = cn_elem.name;
		n_val = cn_elem.value;
		data = encodeURIComponent( n_navn)+'='+encodeURIComponent( n_val);
		data += '&'+encodeURIComponent( m_navn)+'='+encodeURIComponent( m_val);
		ChtDoSend( data);
		cm_elem.value = '';
		}
	ChtUpd();
	cm_elem.focus();
	}

function ChtDoSend( data) {
	DoAjaxCht( 'ajax_chat_ny.php', data);
	ChtUpd();
	}

function ChtUpd() {
	if ( ChtRefresh != 0) { 
		window.clearTimeout( ChtRefresh);
		ChtRefresh = 0;
		}
	DoAjaxCht( 'ajax_chat.php', '');
	if ( inter = document.getElementById( 'chat_delay')) {
		ChtInterval = inter.options[ inter.selectedIndex].value;
		if ( ChtInterval > 0) {
			ChtRefresh = window.setTimeout( ChtUpd, ChtInterval*1000);
			}
		}
	}

function ChtChkNick() {
	cn_elem = document.getElementById( 'ch_nick');
	n_navn = cn_elem.name;
	n_val = cn_elem.value;
	data = 'cmd=chk_nick&'+encodeURIComponent( n_navn)+'='+encodeURIComponent( n_val);
	DoAjaxCht( 'ajax_cht_util.php', data);
	ChtUpd();
	document.getElementById( 'ch_msg').focus();
	}

function ChatReset() {
	DoAjaxCht( 'ajax_cht_util.php', 'cmd=reset');
	ChtUpd();
	}

function ChatKey( e) {
	kCode = window.event ? window.event.keyCode : e.keyCode;
	if (( kCode == 13) || ( kCode == 9)) { ChtSend(); }	
	}

function NickKey( e) {
	kCode = window.event ? window.event.keyCode : e.keyCode;
	if ( kCode == 13) { 	document.getElementById( 'ch_msg').focus(); }	
	}

/*
 *	Funktioner til automatisk indsættelse af meddelelser
 */
 
function SysMsg() {
	r_nr = Math.floor( Math.random() * Msgs.length);
	data = 'ch_nick=System&ch_msg='+encodeURIComponent( Msgs[r_nr]);
	ChtDoSend( data);
	ChtUpd();
	}

function ChtSysToggle() {
	s_but = document.getElementById( 'cht_sys');
	s_sel = document.getElementById( 'cht_sys_int');
	set_int = s_sel.options[ s_sel.selectedIndex].value;
	act = s_but.innerHTML;
	s_sel.disabled = ( act == 'Start');
	if ( act == 'Start') { 		// start system meddelelser
		s_but.innerHTML = 'Stop';
		SysMsg();
		SysInterval = setInterval( SysMsg, set_int*1000);
		}
	else {			// stop system meddelelser
		s_but.innerHTML = 'Start';
		if ( SysInterval != 0) { 
			clearInterval( SysInterval);
			SysInterval = 0;
			}
		}
	}
