1
0
Fork 0
mirror of https://github.com/Oreolek/ifhub.club.git synced 2024-06-29 04:55:02 +03:00

fix developer-jquery

This commit is contained in:
Mzhelskiy Maxim 2011-05-03 13:19:47 +00:00
parent 4e2dde7dc5
commit b03808533d
4 changed files with 78 additions and 67 deletions

View file

@ -2,7 +2,7 @@
<h2>{$aLang.talk_blacklist_title}</h2>
<form onsubmit="talk.addToBlackList(); return false;">
<form onsubmit="return ls.talk.addToBlackList();">
<p><label>{$aLang.talk_balcklist_add_label}:<br />
<input type="text" id="talk_blacklist_add" name="add" class="input-wide autocomplete-users" /></label></p>
</form>
@ -12,7 +12,7 @@
{if $aUsersBlacklist}
<ul class="list" id="black_list">
{foreach from=$aUsersBlacklist item=oUser}
<li><a href="{$oUser->getUserWebPath()}" class="user">{$oUser->getLogin()}</a> - <a href="#" id="blacklist_item_{$oUser->getId()}" class="delete">{$aLang.blog_delete}</a></li>
<li id="blacklist_item_{$oUser->getId()}_area"><a href="{$oUser->getUserWebPath()}" class="user">{$oUser->getLogin()}</a> - <a href="#" id="blacklist_item_{$oUser->getId()}" class="delete">{$aLang.blog_delete}</a></li>
{/foreach}
</ul>
{/if}

View file

@ -5,7 +5,7 @@
<div class="block-content">
<ul class="list" id="friends">
{foreach from=$aUsersFriend item=oFriend}
<li><label><input type="checkbox" name="friend[{$oFriend->getId()}]" class="checkbox" />{$oFriend->getLogin()}</label></li>
<li><input id="talk_friend_{$oFriend->getId()}" type="checkbox" name="friend[{$oFriend->getId()}]" class="checkbox" /><label for="talk_friend_{$oFriend->getId()}" id="talk_friend_{$oFriend->getId()}_label">{$oFriend->getLogin()}</label></li>
{/foreach}
</ul>
</div>

View file

@ -2,7 +2,7 @@
<h2>{$aLang.talk_speaker_title}</h2>
{if $oTalk->getUserId()==$oUserCurrent->getId() or $oUserCurrent->isAdministrator()}
<form onsubmit="talk.addToTalk({$oTalk->getId()}); return false;">
<form onsubmit="return ls.talk.addToTalk({$oTalk->getId()});">
<p><label>{$aLang.talk_speaker_add_label}:<br />
<input type="text" id="talk_speaker_add" name="add" class="input-wide autocomplete-users" /></label></p>
<input type="hidden" id="talk_id" value="{$oTalk->getId()}" />
@ -16,7 +16,7 @@
{if $oTalkUser->getUserId()!=$oUserCurrent->getId()}
{assign var="oUser" value=$oTalkUser->getUser()}
{if $oTalkUser->getUserActive()!=$TALK_USER_DELETE_BY_AUTHOR}
<li>
<li id="speaker_item_{$oTalkUser->getUserId()}_area">
<a class="user {if $oTalkUser->getUserActive()!=$TALK_USER_ACTIVE}inactive{/if}" href="{$oUser->getUserWebPath()}">{$oUser->getLogin()}</a>
{if $oTalkUser->getUserActive()==$TALK_USER_ACTIVE and ($oTalk->getUserId()==$oUserCurrent->getId() or $oUserCurrent->isAdministrator())}- <a href="#" id="speaker_item_{$oTalkUser->getUserId()}" class="delete">{$aLang.blog_delete}</a>{/if}
</li>

View file

@ -1,151 +1,162 @@
var talk = {
//==================
// Функции
//==================
var ls = ls || {};
// Добавляет пользователя к переписке
addToTalk: function(idTalk) {
sUsers = $('#talk_speaker_add').val();
/**
* Функционал личных сообщений
*/
ls.talk = (function ($) {
/**
* Добавляет пользователя к переписке
*/
this.addToTalk = function(idTalk){
var 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) {
ls.ajax(aRouter['talk']+'ajaxaddtalkuser/', {users: sUsers, idTalk: idTalk}, function(result) {
if (result.bStateError) {
$.notifier.error(null, result.sMsg);
ls.msg.error(null, result.sMsg);
} else {
$.each(result.aUsers, function(index, item) {
if(item.bStateError){
$.notifier.notice(null, result.sMsg);
ls.msg.notice(null, item.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>'));
$('#speaker_list').append($('<li id="speaker_item_'+item.sUserId+'_area"><a href="'+item.sUserLink+'" class="user">'+item.sUserLogin+'</a> - <a href="#" id="speaker_item_'+item.sUserId+'" class="delete">'+LANG_DELETE+'</a></li>'));
}
});
}
});
return false;
},
// Удаляет пользователя из переписки
deleteFromTalk: function(link, idTalk) {
};
/**
* Удаляет пользователя из переписки
*/
this.removeFromTalk = function(link, idTalk) {
link = $(link);
link.parent('li').fadeOut(500);
$('#'+link.attr('id')+'_area').fadeOut(500,function(){
$(this).remove();
});
idTarget = link.attr('id').replace('speaker_item_','');
$.post(aRouter['talk']+'ajaxdeletetalkuser/', { idTarget: idTarget, idTalk: idTalk, security_ls_key: LIVESTREET_SECURITY_KEY }, function(result) {
ls.ajax(aRouter['talk']+'ajaxdeletetalkuser/', {idTarget: idTarget, idTalk: idTalk}, function(result) {
if (!result) {
$.notifier.error('Error','Please try again later');
ls.msg.error('Error','Please try again later');
link.parent('li').show();
}
if (result.bStateError) {
$.notifier.error(null, result.sMsg);
ls.msg.error(null, result.sMsg);
link.parent('li').show();
}
});
return false;
},
}
// Добавляет пользователя в черный список
addToBlackList: function() {
sUsers = $('#talk_blacklist_add').val();
/**
* Добавляет пользователя в черный список
*/
this.addToBlackList = function() {
var 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) {
ls.ajax(aRouter['talk']+'ajaxaddtoblacklist/', {users: sUsers}, function(result) {
if (result.bStateError) {
$.notifier.error(null, result.sMsg);
ls.msg.error(null, result.sMsg);
} else {
$.each(result.aUsers, function(index, item) {
if(item.bStateError){
$.notifier.notice(null, result.sMsg);
ls.msg.notice(null, item.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>'));
$('#black_list').append($('<li id="blacklist_item_'+item.sUserId+'_area"><a href="#" class="user">'+item.sUserLogin+'</a> - <a href="#" id="blacklist_item_'+item.sUserId+'" class="delete">'+LANG_DELETE+'</a></li>'));
}
});
}
});
return false;
},
}
// Удаляет пользователя из черного списка
deleteFromBlackList: function(link) {
/**
* Удаляет пользователя из черного списка
*/
this.removeFromBlackList = function(link) {
link = $(link);
link.parent('li').fadeOut(500);
idTarget = link.attr('id').replace('blacklist_item_','');
$('#'+link.attr('id')+'_area').fadeOut(500,function(){
$(this).remove();
});
var idTarget = link.attr('id').replace('blacklist_item_','');
$.post(aRouter['talk']+'ajaxdeletefromblacklist/', { idTarget: idTarget, security_ls_key: LIVESTREET_SECURITY_KEY }, function(result) {
ls.ajax(aRouter['talk']+'ajaxdeletefromblacklist/', {idTarget: idTarget}, function(result) {
if (!result) {
$.notifier.error('Error','Please try again later');
ls.msg.error('Error','Please try again later');
link.parent('li').show();
}
if (result.bStateError) {
$.notifier.error(null, result.sMsg);
ls.msg.error(null, result.sMsg);
link.parent('li').show();
}
});
return false;
},
}
// Добавляет или удаляет друга из списка получателей
toggleRecipient: function(login, add) {
to = $.map($('#talk_users').val().split(','), function(item, index){
item = $.trim(item);
/**
* Добавляет или удаляет друга из списка получателей
*/
this.toggleRecipient = function(login, add) {
var 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(', '));
},
}
}
return this;
}).call(ls.talk || {},jQuery);
$(document).ready(function(){
jQuery(document).ready(function($){
// Добавляем или удаляем друга из списка получателей
$('#friends input:checkbox').change(function(){
talk.toggleRecipient($(this).parent().text(), $(this).attr('checked'));
ls.talk.toggleRecipient($('#'+$(this).attr('id')+'_label').text(), $(this).attr('checked'));
});
// Добавляем всех друзей в список получателей
$('#friend_check_all').click(function(){
$('#friends input:checkbox').each(function(index, item){
talk.toggleRecipient($(item).parent().text(), true);
ls.talk.toggleRecipient($('#'+$(item).attr('id')+'_label').text(), true);
$(item).attr('checked', true);
});
return false;
});
// Удаляем всех друзей из списка получателей
$('#friend_uncheck_all').click(function(){
$('#friends input:checkbox').each(function(index, item){
talk.toggleRecipient($(item).parent().text(), false);
ls.talk.toggleRecipient($('#'+$(item).attr('id')+'_label').text(), false);
$(item).attr('checked', false);
});
return false;
});
// Удаляем пользователя из черного списка
$("#black_list_block").delegate("a.delete", "click", function(){
talk.deleteFromBlackList(this);
ls.talk.removeFromBlackList(this);
return false;
});
// Удаляем пользователя из переписки
$("#speaker_list_block").delegate("a.delete", "click", function(){
talk.deleteFromTalk(this, $('#talk_id').val());
ls.talk.removeFromTalk(this, $('#talk_id').val());
return false;
});
});