﻿var msgBaseUrl = null;
var msgTimer = null;
var hasNewMessages = false;
var msgChecked = false;

function checkNewMesages()
{
  _http = new Http(showNewMesages, failureNewMesages);
  req_url = msgBaseUrl + "/newmessages/detail";
//  alert('checkNewMesages(' + req_url + ', ' + _http + ')');
  _http.load(req_url);
} 

function setMsgTimerIfNo()
{
//	alert('setMsgTimerIfNo: ' + msgChecked);
	if (!msgChecked)
	{
		setMsgTimer();
	}
}

function setMsgTimer()
{
    if (msgTimer > 0)
    {
        var msgTimerId = setTimeout("checkNewMesages()", msgTimer);
        msgChecked = true;
    }
}

var titleTimerOn = false;
var titleTimerEnabled = false;
var titleOld = null;

var titleMessageLast = 0;
var titleMessages = ["Вам сообщение!", "LiveExpert.ru", "**********"];


function newMessagesTitleChange()
{
    if (titleTimerEnabled)
    {
        ++titleMessageLast;
        document.title = titleMessages[titleMessageLast % titleMessages.length];
        setTimeout("newMessagesTitleChange()", 500);
    }
    else
    {
        document.title = titleOld;
    }
}

function setNewMessagesTitle()
{
    titleTimerEnabled = true;
    if (!titleTimerOn)
    {
        titleTimerOn = true;
        titleOld = document.title;
        setTimeout("newMessagesTitleChange()", 500);
    }
}

function removeNewMessagesTitle()
{
    titleTimerEnabled = false;
    if (titleOld != null)
    {
        document.title = titleOld;
    }
}

function showNewMesages(str)
{
  var hasMsg = false;
//  alert('showNewMesages: ' + str);

  var jsonObj = eval("("+str+")");
  if (jsonObj != null)
  {
    if ((jsonObj.id != 0) || (jsonObj.guestId != 0))
    {
//        alert(jsonObj.unread_user + '_' + jsonObj.unread_expert);
        if (jsonObj.message != null)
        {
//            alert(jsonObj.message.record_text);
            hasMsg = true;
//            alert(jsonObj.message.href);
            setElementText('photo', jsonObj.message.photo);
            setElementText('text', '<a href="' + jsonObj.message.href +'">' + jsonObj.message.record_text + '</a>');
            setElementText('name', '<a href="' + jsonObj.message.href +'">' + jsonObj.message.name + '</a>');
            document.getElementById('link').href = jsonObj.message.href;
//            alert(document.getElementById('link').href);
            
            setElementText('newmessages_message_title', jsonObj.message.title);
            setElementText('newmessages_user_unread_msg', jsonObj.unread_msg);
            setElementText('newmessages_user_unread_email', jsonObj.unread_email);
            showElement("newmessages_user", true);
            setNewMessagesTitle();

            showElement("newmessages_message", true);
            showElement("newmessages_empty", false);
            showElement("newmessages_nonlogged", false);
            
            if (!hasNewMessages)
            {
				hasNewMessages = true;
				EvalSoundMsg();
			}
        }
        else
        {
            removeNewMessagesTitle();

            showElement("newmessages_message", false);
            showElement("newmessages_empty", true);
            showElement("newmessages_nonlogged", false);
            
            hasNewMessages = false;
        }
//        alert('setMsgTimer logged: ' + msgTimer);
        setMsgTimer();
    }
    else
    {
        showElement("newmessages_message", false);
        showElement("newmessages_empty", false);
        showElement("newmessages_nonlogged", true);
    }
  }
}

function failureNewMesages(str)
{
//  alert('failureNewMesages: ' + str);
//  alert('setMsgTimer failure');
//  alert('setMsgTimer fail: ' + msgTimer);
  setMsgTimer();
} 

function initCheckNewMesages(_baseUrl, _msgTimer)
{
//  alert('initCheckNewMesages: ' + _msgTimer);
  msgBaseUrl = _baseUrl;
  msgTimer = _msgTimer;
//  setMsgTimer();
} 


