Данный скрипт добавляет в окно просмотра репутации возможность быстро отправлять ответный + или - пользователю, изменившему Вашу репутацию. Отправлять "ответки" пользователь сможет только из своей репутации. Встроена поддержка каптчи, так что скрипт работает для любых групп пользователей.
Установка: 1) ПУ \ Управление дизайном \ Персональная страница пользователя
найдите стандартную ссылку просмотра репутации вида:
Code
<a title="Смотреть историю репутации" class="repHistory" href="$_REP_READ_URL$">Репутация (<b>$_REPUTATION$</b>)</a>
и замените её на:
Code
<a href="javascript://" onclick="otvet.get('$_USER_ID$','$USER_ID$')">Репутация (<b>$_REPUTATION$</b>)</a>
<script>
// By ujs.su
var reasons = ['Спасибо за твой +, лови ответный','Минус в ответ на минус']; // Причины изменения репутации
</script>
<script type="text/javascript">
/*
Name: Ответрепутацией на изменение репутации
Date: 27.04.2012
Author: www.ujs.su, Coder
Изменение данных строк может вывести скрипт из строя!
Поддержка и помощь, вопросы и пожелания оказываю и принимаю тут: http://www.ujs.su/index/8-41
*/
var otvet = {
get:function (my,global) {
new _uWnd('Rh','Репутация',400,150,{autosize:1,maxh:400,minh:30,oncontent:function() {
if(my == global) {
$('div[title^="Уровень повышен"]').next('a').after(' [<a href="javascript://" onclick="otvet.post(2,$(this).prev(\'a\').attr(\'href\').split(\'/\')[4].split(\'-\')[1]);$(this).hide()" style="font-size:10px">Отправить <b>+</b> в ответ</a>]');
$('div[title^="Уровень понижен"]').next('a').after(' [<a href="javascript://" onclick="otvet.post(1,$(this).prev(\'a\').attr(\'href\').split(\'/\')[4].split(\'-\')[1]);$(this).hide()" style="font-size:10px">Отправить <b>-</b> в ответ</a>]');
}}},{url:'/index/9-'+my})
},
post:function(action,receiver,reason) {
$.get('/index/23-'+receiver, function (ujs_su) {
var params = $('cmd[p="content"]', ujs_su).text();
data = [$('input[name="seckey"]',params).val(), $('input[name="ssid"]',params).val(), $("#secuImg", params).clone(), action.toString(), receiver.toString()];
if(data[0]) {
new _uWnd('captcha', 'Код безопасности', 350, 120, {
autosize: 1,
modal: 1,
close:0,
oncontent: function () {
$("#simg").html(data[2]);
$("#capcode").focus();
_uWnd.getbyname('captcha').checksize()
}
}, '<div style="font-size:14px">Введите код с картинки:</div><hr><span id="simg"></span> <input type="text" id="capcode" style="height:35px;font-weight:bold" maxlength="5"><hr><input type="button" id="startpost" onclick="otvet.postuser(data[3],data[4])" style="padding:3px;color:#777" value="Отправить">')
} else {
$.post('/index/',{a:'23',act:action,reason:action == 2 ? reasons[0] : reasons[1],s:receiver,t:'1',ssid: data[1]},function(yes) {
var da = $('cmd',yes).text();
if (da.indexOf('Изменить') != -1) {
_uWnd.alert('<b style="color:red">Вы уже изменяли репутацию этому пользователю</b>', 'Ошибка');
} else {_uWnd.alert('<br><img src="/.s/img/icon/ok.png"> <b>Готово!</b>', 'Готово');}
})
} // Отправка для остальных групп
})
},
postuser: function (act,rec) {
$('#startpost').attr('disabled','disabled');
$.post('/index/',{a:'23',act:act,reason:act == 2 ? reasons[0] : reasons[1],s:rec,t:'1',seckey:data[0],code:$('#capcode').val(),ssid: data[1]},function(yes) {
var da = $('cmd',yes).text();
if (da.indexOf('безопасности') != -1) {
_uWnd.alert('<b style="color:red">Неправильный код безопасности</b>', 'Ошибка'); $('#secuImg').click();$('#startpost').removeAttr('disabled')
} else if (da.indexOf('Изменить') != -1) {
_uWnd.close('captcha')
_uWnd.alert('<b style="color:red">Вы уже изменяли репутацию этому пользователю</b>', 'Ошибка');
} else {_uWnd.alert('<br><img src="/.s/img/icon/ok.png"> <b>Готово!</b>', 'Готово');_uWnd.close('captcha')}
})
}
}
</script>
ВСЁ!