/**
 * @include  "d:/www/_common/js/js_common.js"
 * @include  "d:/www/_common/js/ajaqs_sender.js"
 * @include  "d:/www/_common/js/events.js"
 * @include  "_p_messages.js"
 * @include  "_p_scripts.js"
 * @include  "_p_scripts.js"
 */

/**
 * 
 * @type Number
 */
var pnMessageID = 0;

/**
 * пытаемся показать окно отправки сообщения
 *
 * @param
 * @return boolean - всегда TRUE
 */
function message(tnMessID)
{
	if (!xmlHttp) return false;        // запуск Аякса невозможен - пропускаем

	pnMessageID = tnMessID;

	var loDiv = id('feed_shell');

	feed_overlay_start();

	feed_overlay();

	if (!loDiv)		//	нету формы - сначала ее создаем
	{
		var lcRand = Math.random() *Math.random() *Math.random();
		var lcUrl = './mess-form/'+lcRand+'/';
	    oAjax.start(lcUrl, message_Response, 'txtNone=1', true);
	}
	else message_Show();		//	показываем форму

	return null;
}

/**
 * получает HTML-код формы отправки сообщения
 *
 * @return boolean - всегда TRUE
 */
function message_Response()
{
	if (oAjax.responseText != '')
	{
		var loDiv = dce('div');
		loDiv.id = 'feed_shell';
		loDiv.className = 'psevdo_window';
		loDiv.innerHTML = oAjax.responseText;

		dbac(loDiv);
		message_Show();		//	показываем форму
	}
	else hide('feed_overlay');
	return true;
}

/**
 * показывает форму отправки сообщения
 *
 * @return void
 */
function message_Show()
{
	var loDiv = id('feed_shell');

	loDiv.style.width = p_obj.messageW + 'px';
	loDiv.style.height = p_obj.messageH + 'px';

    var lnTop = calcPWindowY(p_obj.messageH);	// вертикальное позиционирование контейнера посредине окна
    var lnLeft = calcPWindowX(p_obj.messageW);	// горизонтальное позиционирование контейнера посредине окна

    setXY(loDiv, lnLeft, lnTop);

	loDiv.style.display = "block";

	set_feed_title(loDiv, 'message');

	id('cmdSendFeed').onclick = message_send;
	id('txtMessID').value = pnMessageID;

	id('txtFName').focus();
}

/**
 * проверяет форму отправки сообщения на правильность,
 * и если все Ок инициализирует отправку данных на сервер
 *
 * @return boolean - всегда TRUE
 */
function message_send()
{
	if (! feedback_check_form()) return false;

	var laValues = ['txtFName', 'txtFEmail', 'txtFTema', 'edtFText', 'txtMessID'];

	oAjax.start('./mess-send/', message_send_Response, laValues, true);

	return true;
}

/**
 * обрабатывает ответ сервера после отправки сообщения
 *
 * @return boolean - всегда TRUE
 */
function message_send_Response()
{
	if (oAjax.responseObj.result == 'Error') { alert(oAjax.responseObj.error); return true; }
	else
	{
		alert(oAjax.responseObj.message);
		id('txtFTema').value = '';
		id('edtFText').value = '';
		close_mess_form();
	}
	return true;
}

/**
 * закрывает форму (скрывает "окно") отправки сообщения
 *
 * @return void
 */
function close_mess_form()
{
	hide('feed_shell');
	hide('feed_overlay');
}

