2011-04-01 10:49:36 +03:00
|
|
|
var talk = {
|
|
|
|
//==================
|
2011-04-01 12:54:47 +03:00
|
|
|
// Функции
|
2011-04-01 10:49:36 +03:00
|
|
|
//==================
|
|
|
|
|
2011-04-01 12:54:47 +03:00
|
|
|
// Добавляет пользователя к переписке
|
2011-04-01 10:49:36 +03:00
|
|
|
addToTalk: function(idTalk) {
|
|
|
|
sUsers = $('#talk_speaker_add').val();
|
|
|
|
if(!sUsers) return false;
|
|
|
|
$('#talk_speaker_add').val('');
|
|
|
|
thisObj = this;
|
|
|
|
|
|
|
|
$.post(aRouter['talk']+'ajaxaddtalkuser/', { users: sUsers, idTalk: idTalk, security_ls_key: LIVESTREET_SECURITY_KEY }, function(result) {
|
|
|
|
if (result.bStateError) {
|
|
|
|
$.notifier.error(null, result.sMsg);
|
|
|
|
} else {
|
|
|
|
$.each(result.aUsers, function(index, item) {
|
|
|
|
if(item.bStateError){
|
|
|
|
$.notifier.notice(null, result.sMsg);
|
|
|
|
} else {
|
|
|
|
if($('#speaker_list').length == 0) {
|
|
|
|
$('#speaker_list_block').append($('<ul class="list" id="speaker_list"></ul>'));
|
|
|
|
}
|
|
|
|
$('#speaker_list').append($('<li><a href="'+item.sUserLink+'" class="user">'+item.sUserLogin+'</a> - <a href="#" id="speaker_item_'+item.sUserId+'" class="delete">'+LANG_DELETE+'</a></li>'));
|
|
|
|
}
|
|
|
|
});
|
|
|
|
}
|
|
|
|
});
|
|
|
|
|
|
|
|
return false;
|
|
|
|
},
|
|
|
|
|
|
|
|
|
2011-04-01 12:54:47 +03:00
|
|
|
// Удаляет пользователя из переписки
|
2011-04-01 10:49:36 +03:00
|
|
|
deleteFromTalk: function(link, idTalk) {
|
|
|
|
link = $(link);
|
|
|
|
|
|
|
|
link.parent('li').fadeOut(500);
|
|
|
|
idTarget = link.attr('id').replace('speaker_item_','');
|
|
|
|
|
|
|
|
$.post(aRouter['talk']+'ajaxdeletetalkuser/', { idTarget: idTarget, idTalk: idTalk, security_ls_key: LIVESTREET_SECURITY_KEY }, function(result) {
|
|
|
|
if (!result) {
|
|
|
|
$.notifier.error('Error','Please try again later');
|
|
|
|
link.parent('li').show();
|
|
|
|
}
|
|
|
|
if (result.bStateError) {
|
|
|
|
$.notifier.error(null, result.sMsg);
|
|
|
|
link.parent('li').show();
|
|
|
|
}
|
|
|
|
});
|
|
|
|
|
|
|
|
return false;
|
|
|
|
},
|
|
|
|
|
|
|
|
|
2011-04-01 12:54:47 +03:00
|
|
|
// Добавляет пользователя в черный список
|
2011-04-01 10:49:36 +03:00
|
|
|
addToBlackList: function() {
|
|
|
|
sUsers = $('#talk_blacklist_add').val();
|
|
|
|
if(!sUsers) return false;
|
|
|
|
$('#talk_blacklist_add').val('');
|
|
|
|
thisObj = this;
|
|
|
|
|
|
|
|
$.post(aRouter['talk']+'ajaxaddtoblacklist/', { users: sUsers, security_ls_key: LIVESTREET_SECURITY_KEY }, function(result) {
|
|
|
|
if (result.bStateError) {
|
|
|
|
$.notifier.error(null, result.sMsg);
|
|
|
|
} else {
|
|
|
|
$.each(result.aUsers, function(index, item) {
|
|
|
|
if(item.bStateError){
|
|
|
|
$.notifier.notice(null, result.sMsg);
|
|
|
|
} else {
|
|
|
|
if($('#black_list').length == 0) {
|
|
|
|
$('#black_list_block').append($('<ul class="list" id="black_list"></ul>'));
|
|
|
|
}
|
|
|
|
$('#black_list').append($('<li><a href="#" class="user">'+item.sUserLogin+'</a> - <a href="#" id="blacklist_item_'+item.sUserId+'" class="delete">'+LANG_DELETE+'</a></li>'));
|
|
|
|
}
|
|
|
|
});
|
|
|
|
}
|
|
|
|
});
|
|
|
|
|
|
|
|
return false;
|
|
|
|
},
|
|
|
|
|
|
|
|
|
2011-04-01 12:54:47 +03:00
|
|
|
// Удаляет пользователя из черного списка
|
2011-04-01 10:49:36 +03:00
|
|
|
deleteFromBlackList: function(link) {
|
|
|
|
link = $(link);
|
|
|
|
|
|
|
|
link.parent('li').fadeOut(500);
|
|
|
|
idTarget = link.attr('id').replace('blacklist_item_','');
|
|
|
|
|
|
|
|
$.post(aRouter['talk']+'ajaxdeletefromblacklist/', { idTarget: idTarget, security_ls_key: LIVESTREET_SECURITY_KEY }, function(result) {
|
|
|
|
if (!result) {
|
|
|
|
$.notifier.error('Error','Please try again later');
|
|
|
|
link.parent('li').show();
|
|
|
|
}
|
|
|
|
if (result.bStateError) {
|
|
|
|
$.notifier.error(null, result.sMsg);
|
|
|
|
link.parent('li').show();
|
|
|
|
}
|
|
|
|
});
|
|
|
|
|
|
|
|
return false;
|
|
|
|
},
|
|
|
|
|
|
|
|
|
2011-04-01 12:54:47 +03:00
|
|
|
// Добавляет или удаляет друга из списка получателей
|
2011-04-01 10:49:36 +03:00
|
|
|
toggleRecipient: function(login, add) {
|
|
|
|
to = $.map($('#talk_users').val().split(','), function(item, index){
|
|
|
|
item = $.trim(item);
|
|
|
|
return item != '' ? item : null;
|
|
|
|
});
|
|
|
|
if (add) { to.push(login); to = $.richArray.unique(to); } else { to = $.richArray.without(to, login); }
|
|
|
|
$('#talk_users').val(to.join(', '));
|
|
|
|
},
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$(document).ready(function(){
|
2011-04-01 12:54:47 +03:00
|
|
|
// Добавляем или удаляем друга из списка получателей
|
2011-04-01 10:49:36 +03:00
|
|
|
$('#friends input:checkbox').change(function(){
|
|
|
|
talk.toggleRecipient($(this).parent().text(), $(this).attr('checked'));
|
|
|
|
});
|
|
|
|
|
2011-04-01 12:54:47 +03:00
|
|
|
// Добавляем всех друзей в список получателей
|
2011-04-01 10:49:36 +03:00
|
|
|
$('#friend_check_all').click(function(){
|
|
|
|
$('#friends input:checkbox').each(function(index, item){
|
|
|
|
talk.toggleRecipient($(item).parent().text(), true);
|
|
|
|
$(item).attr('checked', true);
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
2011-04-01 12:54:47 +03:00
|
|
|
// Удаляем всех друзей из списка получателей
|
2011-04-01 10:49:36 +03:00
|
|
|
$('#friend_uncheck_all').click(function(){
|
|
|
|
$('#friends input:checkbox').each(function(index, item){
|
|
|
|
talk.toggleRecipient($(item).parent().text(), false);
|
|
|
|
$(item).attr('checked', false);
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
2011-04-01 12:54:47 +03:00
|
|
|
// Удаляем пользователя из черного списка
|
2011-04-01 10:49:36 +03:00
|
|
|
$("#black_list_block").delegate("a.delete", "click", function(){
|
|
|
|
talk.deleteFromBlackList(this);
|
|
|
|
});
|
|
|
|
|
2011-04-01 12:54:47 +03:00
|
|
|
// Удаляем пользователя из переписки
|
2011-04-01 10:49:36 +03:00
|
|
|
$("#speaker_list_block").delegate("a.delete", "click", function(){
|
|
|
|
talk.deleteFromTalk(this, $('#talk_id').val());
|
|
|
|
});
|
|
|
|
});
|