// список врагов и значений - режутся ли их комменты
var cutCmnts = [];

/* открывает меню настроек врага */
function openEnemySettings (enemyLink, enemyAvaPath, enemyName, bIgnore) {
	var enemyId = $(enemyLink).attr('id');
	var enemyPosition = $(enemyLink).offset();
	var parentPosition = $(enemyLink).parent().offset();
	var xposition = enemyPosition.left-parentPosition.left;
	var yposition = enemyPosition.top-parentPosition.top;

        var bCheckBox = "";
        var bBoxName;
        var ccElem = cutCmnts[enemyId];
        if (typeof ccElem != 'undefined') bIgnore = ccElem; else cutCmnts[enemyId] = bIgnore;
        if (bIgnore == 1) bCheckBox = " checked='true' ";
        if (bIgnore == 1) bBoxName = "Камменты режутся"; else bBoxName = "Камменты видны";

	$('#enemyAva').css({'display' : 'block', 'position' : 'absolute', 'top' : yposition-2, 'left' : xposition-2}).html('<a href="javascript:void(0);" class="usersava enemyava" style="background: #663300 url('+enemyAvaPath+') center center no-repeat;" onclick="closeEnemySettings();"></a>');
	$('#enemySettings').css({'display' : 'block', 'position' : 'absolute', 'top' : yposition+26, 'left' : '-2px'}).html('<a href="javascript:void(0);" onclick="closeEnemySettings();"><img src="../templates/brown/img/x.gif" alt="x" class="block right close" /></a><h5 class="browntitle block" style="margin-bottom:10px;">'+enemyName+'</h5><small class="enemyMenu"><a href="javascript:void(0);"><label><input type="checkbox" id="enemyShowComments" ' + bCheckBox + ' onclick="ajaxHideEnemyComments('+enemyId+');" /> '+bBoxName+'</label></a><a href="/user/private/'+enemyId+'/#write">написать срулю <span>&rarr;</span></a><a href="/user/info/'+enemyId+'/">профиль сруля <span>&rarr;</span></a><a href="/user/comments/'+enemyId+'/">камменты сруля <span>&rarr;</span></a><a href="/user/articles/'+enemyId+'/">высеры сруля <span>&rarr;</span></a><a href="javascript:void(0);" onclick="ajaxDeleteEnemy('+enemyId+');">удалить из врагов</a></small>');
	$('#enemiesList').children('a').css({'opacity' : '0.3'});
}
/* закрывает меню настроек врага */
function closeEnemySettings() {
	$('#enemyAva').css({'display' : 'none'});
	$('#enemySettings').css({'display' : 'none'});
	$('#enemiesList').children('a').css({'opacity' : '1'});
}
/* триггер открывает закрывает дивы */
function triggerDiv(linkId, elementId) {
	if ($(elementId).hasClass('hidden')) {
		$(elementId).removeClass('hidden');
	} else {
		$(elementId).addClass('hidden');
	}
}
/* закрывает массив дивов открывая нужный */
function contentSwitcher(linkId, selectedElementId) {
	$(selectedElementId).parent().children('div').each(function (){
		$(this).addClass('hidden');
	});
	console.log(linkId);
	$(linkId).parent().children('a').each(function (){
		$(this).removeClass('selected');
	});
	$(linkId).addClass('selected');
	$(selectedElementId).removeClass('hidden');
}
/*
$('#toUserName').html("dfcz");
triggerDiv("", '#sendToUser');
setToUserId('3', 'петя-педик');
*/
/* передаём user_id сруля, которому адресуем сообщение */

function setToUserId(toUser, toUsername) {
	/*if (toUser)*/
	$('#toUserName').html(toUsername+'&nbsp;');
	$('#to').html('<input type="hidden" name="to" value="'+toUser+'" />');
}

/* отключает камменты для врага */
function ajaxHideEnemyComments(enemyId) {
        var ignore = cutCmnts[enemyId];
        if (ignore == 1) ignore = 0; else ignore = 1;
	$.ajax({
		url:	 '/ajax/hide_enemy_cmnt.php',
		type:	 'POST',
		contentType: 'application/x-www-form-urlencoded',
		data:	'enemy_id='+enemyId+'&bIgnore='+ignore,
		success: function(html){
        		console.log(html);
                        cutCmnts[enemyId] = ignore;
                        // временно
			closeEnemySettings();
                        window.location.reload();
		}
	});
}
/* удаляет врага из списка */
function ajaxDeleteEnemy(enemyId) {
	//enemyId = enemyId;
	$.ajax({
		url:	 '/ajax/delete_enemy.php',
		type:	 'POST',
		contentType: 'application/x-www-form-urlencoded',
		data:	'enemy_id='+enemyId,
		success: function(html){
			console.log(html);
			$('#'+enemyId).remove();
			closeEnemySettings();
		}
	});
}


/* Обновляет личные сообщения на странице */
function ajaxGetNewPrivateMessages(opponentId) {
    // ищем первое вхождение class=user_comment для определения id последнего коммента
    var cmnt1 = $("div.user_comment:first");
    var lastId = 0;
    if (cmnt1.length > 0) lastId = cmnt1[0].id;

    $.ajax({
            url:	 '/ajax/retrieve_private_messages.php',
            type:	 'POST',
            contentType: 'application/x-www-form-urlencoded',
            data:	'opponentId='+opponentId+'&lastId='+lastId,
            success: function(html){
                if (html != "") {
                    // если не было сообщений на странице, то юзаем объявление user_message для вставки
                    if (cmnt1.length == 0) cmnt1 = $("div.user_message:first");
                    // добавляем сообщения на страницу с проверкой
                    var msgSet = $("div.user_comment", html);
                    var added = 0;
                    for (var i = 0; i < msgSet.length; i++)
                        // ищем на странице элемент с таким же id. не нашли - добавляем
                        if ($("#"+msgSet[i].id).length == 0) {
                            cmnt1.before(msgSet[i]);
                            added += 1;
                        }
                    if (added > 0) {
                        // считаем число полученных сообщений и обновляем счетчик
                        var msgCount = $("div.username", html).length;
                        var oPrCount = $("#pr_count");
                        oPrCount.text(+oPrCount.text() + msgCount);
                        // музыку, маэстро
                        if ($("#playSnd:checked").length > 0) document.getElementById("soundRecMsg").play();
                    }
                }
            }
    });
}

/* Добавляет личное сообщение в БД */
function ajaxAddNewMessage(opponentId) {
    var name = $("#username").val();
    var message = $("#message").val();

    $.ajax({
            url:	 '/ajax/add_private_message.php',
            type:	 'POST',
            contentType: 'application/x-www-form-urlencoded',
            data:	'opponentId='+opponentId+'&name='+encodeURIComponent(name)+'&message='+encodeURIComponent(message),
            success: function(html){
                    // очищаем textarea
                    $("#message").val("");
                    // при успехе - добавляем последние сообщения на страницу
                    ajaxGetNewPrivateMessages(opponentId);
            }
    });
}
