Рейтинг материала Жалоба на материал (отправка на форум)
Жалоба на материал (отправка на форум)
Думаю, что еще кому-то пригодится. Данный скрипт
отправляет жалобы на форум в специальную тему. Теперь не один главный
админ будет рассматривать все жалобы, а и модераторы тоже. Это ускорит
процесс рассмотрения жалоб и жизнь админу
Шаблон страница материала и комментариев к нему, после $BODY$
<script type="text/javascript">
badEntry = {forum: "/forum/17-138-1", open: function(){ new _uWnd('a',
'Жалоба на материал', 350, 230, {align: 0, modal: 1},
'<fieldset><legend>Причина жалобы</legend><select
id="themeBadEntry" onchange="badEntry.type(this.value);return
false;"><option value="0">Выберите один из
вариантов</option><option value="1">Нарушение авторских
прав</option><option value="2">Материал не по тематики
сайта</option><option value="3">Неправильное оформление
материала</option><option value="4">Ссылка на скачивание
битая</option><option
value="5">Другое</option></select></fieldset><fieldset><legend>Текст
жалобы</legend><textarea style="width: 100%" rows="4"
id="reasonBadEntry"
onblur="$(\'#sendBadButton\').focus();"></textarea></fieldset><fieldset><center><input
type="button" id="sendBadButton" value="Отправить"
onclick="badEntry.go();"></center></fieldset>');},type:
function (a){switch (a) {case "1": this.theme = "Нарушение авторских
прав"; break;case "2": this.theme = "Материал не по тематики сайта";
break;case "3": this.theme = "Неправильное оформление материала"; break;
case "4": this.theme = "Ссылка на скачивание битая"; break; case "5":
this.theme = "Другое"; break; default: this.theme = "Тема не выбрана";};
$("#themeBadEntry").replaceWith("<b>" + this.theme +
"</b>"); $("#reasonBadEntry").focus();}, go: function(){var messg =
$("#reasonBadEntry").val(); if (this.theme == undefined) {alert('Тема
жалобы не выбрана'); return;} if (messg.length < 10) {alert('Текст
вашей жолобы слишком короткий'); return;} $.get(this.forum,
function(f){var mymess = encodeURIComponent('[b]Причина жалобы:[/b] ' +
badEntry.theme + '\n[b]Ссылка на материал:[/b] [url]' + location.href +
'[/url]\n[b]Текст жалобы:[/b] '+ messg); badEntry.stringMess =
$("form[name='addform']",f).serialize().replace("message=", "message=" +
mymess); badEntry.seckey = $("input[name='seckey']", f).val() || null;
if (badEntry.seckey) { _uWnd.close('a'); new _uWnd('cap', 'Каптча', 300,
85, {autosize: 0, oncontent: function(){
$("#capImg").html($("#secImgForum", f).clone()); }}, '<span
id="capImg"></span> <input type="text" id="capVal"
style="width: 110px; height: 35px; font-size: 16px; font-weight: bold;
color: blue; text-align: center;" maxlength="4"> <input
type="button" value="OK" onclick="badEntry.capSend()" style="height:
35">');} else {$.post("/forum", badEntry.stringMess, function(re){
var _t = $(re).text(); if (_t.indexOf("был успешно добавлен") != -1) {
_uWnd.close('a'); _uWnd.alert('Успешно отправлено', 'Информация', {w:
220, h: 90, tm: 3000});} else { alert('Ошибка'); }});}});}, capSend:
function(){var s = $("#capVal").val(); $.post("/forum",
badEntry.stringMess.replace("code=", "code="+s), function(re){ var _t =
$(re).text(); if (_t.indexOf("Неправильный код")!= -1) {
$("#secImgForum").trigger("click"); $("#capVal").val("");
_uWnd.alert('Неправильный код безопасности', 'Ошибка', {w: 220, h: 90,
tm: 3000});} if (_t.indexOf("был успешно добавлен") != -1) {
_uWnd.close('cap'); _uWnd.alert('Успешно отправлено', 'Информация', {w:
220, h: 90, tm: 3000});} if (_t.indexOf("Найдены запрещенные ББкоды") !=
-1) { _uWnd.close('cap'); alert('Вашей группе запрещено использовать ББ
коды на форуме.\n Обратитесь за помощью к администрации.'); }});}}; </script>
Это в этот-же шаблон, куда хотите
<a href="javascript://" onclick="badEntry.open();return false;">Жаловаться на материал</a>
Ищем в коде
forum: "/forum/17-138-1"
/forum/17-138-1 заменяем на ссылку на тему, в которую отправлять жалобы. В правах групп придется разрешить Использование ББ-коды [URL] и [IMG]
или изменить в скрипте текст отправляемого сообщения, иначе будет
всплывать такая ошибка: "Вашей группе запрещено использовать ББ коды на
форуме. Обратитесь за помощью к администрации." P.S. Если пользователь в группе, где нет каптчи, то ее вводить не придется и жалоба отправится сразу Автор: Богдан
Скачивать материалы могут только зарегистрированные пользователи. [ Регистрация | Вход ]