// LM 3
var gs_pulseHandle, go_pulseSrc;
function startChatPulse() {chatPulse(); gs_pulseHandle = window.setInterval(chatPulse, 15000);}
function killChatPulse() {gs_pulseHandle = window.clearInterval(gs_pulseHandle);}
function chatPulse() {
  var ls_url, ls_room = gs_room; var ls_name = cleanName(go_nameBox.value);
  var ls_prefix = ls_room.substring(3,0).toLowerCase();
  if ( ls_prefix == 'pvt' || ls_prefix == 'hst' ) { ls_room = '99'; ls_name = '99'; }
  ls_url = 'http:\/\/' + gs_dom + '\/chatpulse.asp?h=' + ls_name + '&pfx=9_&r=' + ls_room ;
  go_pulseSrc = setScript(go_pulseSrc, ls_url);
}
function updOnline(is_list, is_room) {
  var la_rooms = new Array(), la_users = new Array(), la_tempR = new Array(), la_tempU = new Array(), ls_html  = '', ls_item, ls_search;
  is_list = is_list.split(',');
  for(var i = 0; i < is_list.length; i++) {
    ls_item = is_list[i];
    if( ls_item.charAt(0) == '$' ) {
      ls_search = ls_item.substr(4);
      ls_item = ls_item.substr(1,2)+ls_search;
      if( la_tempR.binSearch(ls_search) < 0 ) { la_tempR.binAdd(ls_search); la_rooms.push(ls_item); }
    } else {
      ls_item = ls_item.substr(6)+ls_item.substr(4,2)+ls_item.substr(0,4);
      if( la_tempU.binSearch(ls_item) < 0 ) { la_tempU.binAdd(ls_item); la_users.push(ls_item); }}}
  la_rooms.sort();
  la_users.sort(alphaComp);
  var ls_rName, ln_rCount;
  for( var i = 0; i < la_rooms.length;  i++ ) {
    ls_item   = la_rooms[i];
    ls_rName  = ls_item.substr(2);
    ln_rCount = 98 - parseInt(ls_item.substr(0,2));
    ls_html += '<div class="listRoom" onclick="javascript:goToRoom(\''
              + ls_rName + '\');" title="Go to room \'' 
              + ls_rName + '\'..."><div class="mini">' 
              + ln_rCount + '</div>&nbsp;-&nbsp;'
              + ls_rName + '</div>';}
  go_roomArea.innerHTML = ls_html;
  var ls_prefix = gs_room.substring(3,0).toLowerCase();
  if ( ls_prefix == 'pvt' || ls_prefix == 'hst' ) { go_listArea.innerHTML = ''; return; } 
  var la_iggyList   = go_iggyList.numbers, 
      la_markedList = go_markedList.numbers,
      la_disabledList = go_disabledList.numbers;
  ls_html = '';
  var ls_num, ls_name, ls_flag, ln_numStart, ln_flgStart;
  for ( var i = 1; i < la_users.length; i++ ) {
    ls_item = la_users[i];
    ln_numStart = ls_item.length - 4;
    ln_flgStart = ls_item.length - 6;
    ls_num  = ls_item.substr(ln_numStart, 4);
    ls_name = ls_item.substring(0,ln_flgStart);
    ls_flag = ls_item.substr(ln_flgStart, 2);
    ls_html += '<div onclick="userPopup(event,\'' + ls_num + '\',\'' + ls_name + '\');" ';
    if( la_iggyList.binSearch(ls_num) != -1 ) ls_html += 'class="iggyName">';
    else if( la_markedList.binSearch(ls_num) != -1 ) ls_html += 'class="markedName">';
    else ls_html += 'class="listName"';
    ls_html += '<div class="mini">' + '<img class="flg" src="flags\/' + ls_flag + '.png" \/>&nbsp;<span class="yl">' + ls_num + '<span>&nbsp;</div>'; 
    if( la_disabledList.binSearch(ls_num) != -1 ) ls_html += '*' + ls_name + '</div>'; 
    else ls_html += ls_name + '</div>';
  }
  go_listArea.innerHTML = ls_html;
}

function alphaComp(a,b){ 
  a = a.toLowerCase(); 
  b = b.toLowerCase(); 
  if( a < b ) { return -1; }
  if( a > b ) { return 1; }
  return 0;
}