входим в Топ-20 агентств
Рейтинг Рунета

Генератор правил модерации для сайтов с пользовательским контентом

Правила для отзывов, комментариев, форумов и UGC: что запрещено, как удаляется контент, порядок жалоб. Обязательны для соцсетей по ст. 10.6 149-ФЗ, остальным — защита от претензий.

  • Бесплатно
  • Без регистрации
  • Данные не уходят на сервер
Генератор Правил модерации Для форумов, комментариев, отзывов, UGC
Обязательные правила с требованиями ст. 10.6 149-ФЗ установлены для владельцев социальных сетей, включённых в реестр Роскомнадзора. Для остальных сайтов правила модерации — добровольный документ, который помогает обосновать удаление контента.
Правила модерации Полная версия для размещения на сайте
Шаблон, не юридическая консультация.
\n\n'; } function saveDoc(name, title, body) { saveBlob(name, docFile(title, body), 'application/msword'); } /* Профиль реквизитов: общий для генераторов, хранится в браузере */ var KEY = 'rwt-requisites'; function load() { try { var o = JSON.parse(localStorage.getItem(KEY) || '{}'); return (o && typeof o === 'object') ? o : {}; } catch (e) { return {}; } } function store(o) { try { localStorage.setItem(KEY, JSON.stringify(o)); return true; } catch (e) { return false; } } function forget() { try { localStorage.removeItem(KEY); } catch (e) {} } /* map: {name, inn, ogrn, address, email, phone, site} → id поля; bar — строка «сохраняются · Очистить» */ function profile(map, bar, onChange) { var keys = Object.keys(map), saved = load(); function el(k) { return document.getElementById(map[k]); } keys.forEach(function (k) { var e = el(k); if (e && !e.value && saved[k]) e.value = saved[k]; }); var save = debounce(function () { var o = load(); keys.forEach(function (k) { var e = el(k); if (!e) return; var v = e.value.trim(); if (v) o[k] = v; else delete o[k]; }); store(o); }, 400); keys.forEach(function (k) { var e = el(k); if (e) e.addEventListener('input', save); }); if (bar) profileBar(bar, function () { keys.forEach(function (k) { var e = el(k); if (e) e.value = ''; }); if (onChange) onChange(); }); } function profileBar(bar, onClear) { if (typeof bar === 'string') bar = document.getElementById(bar); if (!bar) return; bar.innerHTML = 'Реквизиты сохраняются в вашем браузере · '; bar.querySelector('button').addEventListener('click', function () { forget(); if (onClear) onClear(); }); } /* Панель экспорта (110 px — запас под закреплённую шапку сайта): на десктопе — в блоке результата, на узком экране — липкая внизу инструмента */ function dock(barEl, home, target, bp) { if (typeof barEl === 'string') barEl = document.getElementById(barEl); if (typeof home === 'string') home = document.getElementById(home); if (typeof target === 'string') target = document.getElementById(target); if (!barEl || !home) return; var root = document.getElementById('rwt-tool') || home.closest('.rwt') || home.parentNode; var mq = window.matchMedia ? window.matchMedia('(max-width: ' + (bp || 900) + 'px)') : null; function place() { if (mq && mq.matches) { if (barEl.parentNode !== root) root.appendChild(barEl); barEl.classList.add('is-float'); } else { if (barEl.parentNode !== home) home.appendChild(barEl); barEl.classList.remove('is-float'); } } place(); if (mq) { if (mq.addEventListener) mq.addEventListener('change', place); else if (mq.addListener) mq.addListener(place); } var show = barEl.querySelector('.rwd-show'); if (show && target) show.addEventListener('click', function () { var y = target.getBoundingClientRect().top + (window.pageYOffset || 0) - 110; window.scrollTo({ top: Math.max(0, y), behavior: 'smooth' }); }); } return { esc: esc, parse: parse, html: html, preview: preview, text: text, splitNotes: splitNotes, showNotes: showNotes, debounce: debounce, saveBlob: saveBlob, docFile: docFile, saveDoc: saveDoc, load: load, store: store, forget: forget, profile: profile, profileBar: profileBar, dock: dock }; })(); /*@rwd-kit-end*/ (function(){ var $ = function(id){ return document.getElementById(id); }; var MONTHS = ['января','февраля','марта','апреля','мая','июня','июля','августа','сентября','октября','ноября','декабря']; function isoToday(){ var d = new Date(); return d.getFullYear() + '-' + ('0' + (d.getMonth() + 1)).slice(-2) + '-' + ('0' + d.getDate()).slice(-2); } function ruDate(iso){ var m = /^(\d{4})-(\d{2})-(\d{2})$/.exec(iso || ''); if (!m) return ruDate(isoToday()); return (+m[3]) + ' ' + MONTHS[+m[2] - 1] + ' ' + m[1] + ' г.'; } function v(id, def){ var x = ($(id).value || '').trim(); return x || def; } function esc(s){ return String(s).replace(/&/g,'&').replace(//g,'>'); } var MOD = { pre: 'пре-модерация: пользовательский контент публикуется после проверки модератором', post: 'пост-модерация: контент публикуется сразу и может быть удалён после проверки при нарушении Правил', auto: 'смешанная модерация: автоматическая фильтрация с последующей ручной проверкой спорных случаев' }; var md = ''; function generateModerationRules(){ var site = v('siteName','[Название сайта]'), email = v('adminEmail','[email]'); var date = ruDate($('policyDate').value); var type = $('moderationType').value; var cdays = parseInt($('complaintDays').value, 10); if (!(cdays > 0)) cdays = 10; var has = function(id){ return $(id).checked; }; var types = []; if (has('hasComments')) types.push('комментарии под статьями и постами'); if (has('hasForum')) types.push('сообщения на форуме и объявления'); if (has('hasReviews')) types.push('отзывы о товарах и услугах'); if (has('hasUploads')) types.push('загружаемые файлы и изображения'); if (has('hasPrivateMessages')) types.push('личные сообщения между пользователями (проверяются только по жалобе)'); if (!types.length) types.push('любой пользовательский контент'); var out = [], sn = 0, pn = 0, ref = {}; function H(t, key){ sn++; pn = 0; if (key) ref[key] = sn; out.push('## ' + sn + '. ' + t); } function P(t){ pn++; out.push(sn + '.' + pn + '. ' + t); return sn + '.' + pn; } function L(a){ out.push(a.map(function(x){ return '- ' + x; }).join('\n')); } out.push('# Правила модерации пользовательского контента'); out.push('**Редакция от ' + date + '**'); H('Общие положения'); P('Настоящие Правила устанавливают порядок размещения, проверки и удаления контента, публикуемого пользователями на сайте ' + site + ' (далее — Сайт).'); P('Правила распространяются на: ' + types.join(', ') + '.'); P('Администрация Сайта вправе изменять Правила. Новая редакция вступает в силу с момента публикации на Сайте.'); H('Порядок модерации'); P('На Сайте применяется ' + MOD[type] + '.'); if (type !== 'post') P('Автоматическая проверка может включать фильтрацию по ключевым словам, выявление спама и дублей. Окончательное решение по спорным случаям принимает модератор.'); if (type === 'pre') P('Срок проверки контента при пре-модерации — не более 48 часов.'); H('Запрещённый контент', 'ban'); var p31 = P('**Информация, распространение которой запрещено законодательством РФ**, в том числе:'); L([ 'призывы к осуществлению террористической и экстремистской деятельности, массовым беспорядкам, участию в публичных мероприятиях, проводимых с нарушением установленного порядка;', 'материалы, возбуждающие ненависть либо вражду по признакам пола, расы, национальности, языка, происхождения, отношения к религии, принадлежности к социальной группе;', 'заведомо недостоверная общественно значимая информация, в том числе об использовании Вооружённых Сил РФ и деятельности государственных органов, а также материалы, дискредитирующие их в нарушение закона;', 'информация о способах изготовления и употребления наркотических средств и психотропных веществ, местах их приобретения;', 'информация о способах совершения самоубийства и призывы к нему;', 'порнографические материалы, материалы с порнографическими изображениями несовершеннолетних;', 'информация, пропагандирующая нетрадиционные сексуальные отношения и (или) предпочтения, смену пола, педофилию;', 'информация, пропагандирующая отказ от деторождения;', 'реклама и популяризация средств и способов доступа к информационным ресурсам, доступ к которым ограничен на территории РФ;', 'информационные материалы иностранных или международных организаций, деятельность которых признана нежелательной на территории РФ, и материалы организаций, признанных экстремистскими или террористическими;', 'материалы, созданные или распространяемые иностранными агентами, без маркировки, предусмотренной законодательством РФ;', 'информация о незаконных азартных играх и лотереях, незаконной продаже товаров, оборот которых запрещён или ограничен;', 'иная информация, распространение которой запрещено федеральными законами (ст. 15.1, 15.3 Федерального закона от 27.07.2006 № 149-ФЗ).' ]); var p32 = P('**Контент, нарушающий права третьих лиц:**'); L(['оскорбления, клевета, угрозы;', 'персональные данные других лиц (адреса, телефоны, паспортные данные) без их согласия;', 'материалы, нарушающие авторские и смежные права, права на товарные знаки.']); var p33 = P('**Спам и нерелевантный контент:**'); L(['реклама без согласования с Администрацией;', 'флуд — многократное повторение одинаковых сообщений;', 'сообщения, не относящиеся к теме обсуждения;', 'накрутка просмотров, оценок и отзывов.']); var p34 = P('**Технические нарушения:**'); L(['ссылки на вредоносные и фишинговые ресурсы;', 'попытки взлома, нарушения работы Сайта, рассылка спама через формы;', 'создание дополнительных аккаунтов для обхода блокировки.']); if (has('hasUploads')){ P('Загружая файлы и изображения, пользователь подтверждает, что обладает правами на их распространение. Запрещена загрузка исполняемых файлов, архивов с паролем и файлов, содержащих вредоносный код.'); } H('Что разрешено'); P('Конструктивная критика и обсуждение в корректной форме.'); P('Ссылки на другие сайты, если они не нарушают раздел ' + ref.ban + ' Правил.'); P('Цитирование в объёме, оправданном целью цитирования, с указанием автора и источника (ст. 1274 ГК РФ).'); if (has('hasReviews')){ H('Отзывы'); P('Отзывы публикуются вне зависимости от того, положительная или отрицательная в них оценка. Администрация не удаляет, не скрывает и не редактирует отзывы по мотивам негативной оценки товара, услуги или продавца.'); P('Отзыв может быть отклонён или удалён только при нарушении настоящих Правил (раздел ' + ref.ban + '), по требованию уполномоченного органа или суда, а также если он не относится к товару (услуге). Причина удаления сообщается автору, если это технически возможно.'); P('Запрещается размещать отзывы за вознаграждение без указания на это, а также отзывы от имени лица, не приобретавшего товар (услугу).'); } H('Меры при нарушении Правил'); P('Администрация вправе: отказать в публикации контента; удалить опубликованный контент, нарушающий Правила; ограничить доступ пользователя к функциям Сайта временно (от 1 до 30 дней) или бессрочно.'); P('Нарушения по п. ' + p31 + ' и ' + p34 + ' влекут удаление контента и, как правило, блокировку без предупреждения. Нарушения по п. ' + p32 + ' и ' + p33 + ': первый раз — предупреждение, повторно — временная блокировка, при систематических нарушениях — бессрочная блокировка.'); P('При удалении контента пользователь уведомляется с указанием причины, если это технически возможно.'); if (has('hasPrivateMessages')) P('Личные сообщения проверяются только при поступлении жалобы от их получателя и только в части, необходимой для рассмотрения жалобы. Тайна переписки соблюдается в соответствии с законом.'); H('Требования государственных органов'); P('При получении требования Роскомнадзора или иного уполномоченного органа об ограничении доступа к информации Администрация удаляет указанный контент или ограничивает к нему доступ в сроки, установленные ст. 15.1–15.3 Федерального закона № 149-ФЗ (как правило — не позднее суток с момента получения уведомления).'); P('Сведения о пользователе раскрываются только в случаях и порядке, предусмотренных законодательством РФ (по запросу суда, органов следствия и дознания и иных уполномоченных органов).'); H('Жалобы и апелляции'); P('Пожаловаться на контент можно кнопкой «Пожаловаться» (если она есть) или письмом на ' + email + '. В жалобе укажите ссылку на материал и нарушенное правило.'); P('Жалоба рассматривается в срок не более ' + cdays + ' рабочих дней. По результатам жалоба отклоняется либо контент удаляется, пользователю выносится предупреждение или ограничивается доступ.'); P('Правообладатель может направить заявление о нарушении исключительных прав на ' + email + '. Спорный контент удаляется или блокируется после проверки заявления; правообладатель также вправе обратиться в порядке ст. 15.2 Федерального закона № 149-ФЗ.'); P('Пользователь, чей контент удалён или доступ ограничен, может подать апелляцию на ' + email + ' с пометкой «Апелляция». Апелляция рассматривается в течение 10 рабочих дней. Решение Администрации может быть обжаловано в порядке, установленном законодательством РФ.'); H('Ответственность пользователей'); P('Пользователь самостоятельно отвечает за размещаемый им контент в соответствии с законодательством РФ, в том числе ст. 152 ГК РФ (защита чести, достоинства и деловой репутации), ст. 5.61 КоАП РФ (оскорбление), ст. 128.1 УК РФ (клевета).'); P('Размещая контент, пользователь предоставляет владельцу Сайта безвозмездную неисключительную лицензию на его воспроизведение и доведение до всеобщего сведения в пределах функционала Сайта на срок размещения контента.'); var add = v('additionalRules',''); if (add){ H('Дополнительные правила'); out.push(add); } H('Контакты'); out.push('По вопросам модерации, жалобам и апелляциям: ' + email + '\nСрок ответа: не более ' + cdays + ' рабочих дней по жалобам, до 10 рабочих дней по апелляциям.'); out.push('---'); out.push('*Шаблон документа, не юридическая консультация.*'); md = out.join('\n\n'); $('resultArea').innerHTML = RWD.preview(RWD.html(md)); } function resetForm(){ $('siteName').value = ''; $('adminEmail').value = ''; $('additionalRules').value = ''; $('policyDate').value = isoToday(); ['hasComments','hasForum','hasReviews','hasUploads','hasPrivateMessages'].forEach(function(id){ $(id).checked = false; }); $('complaintDays').value = '10'; $('moderationType').value = 'post'; generateModerationRules(); } $('resetBtn').onclick = resetForm; $('copyBtn').onclick = function(){ RWT.copy(RWD.text(md), this); }; $('copyHtmlBtn').onclick = function(){ RWT.copy(RWD.html(md), this); }; $('downloadBtn').onclick = function(){ RWD.saveDoc('pravila-moderacii.doc', 'Правила модерации пользовательского контента', RWD.html(md)); }; var live = RWD.debounce(generateModerationRules, 300); $('formBody').addEventListener('input', live); $('formBody').addEventListener('change', live); RWD.profile({ email: 'adminEmail' }, 'rwdSaved', generateModerationRules); RWD.dock('rwdBar', 'rwdHome', 'resultArea', 1000); $('policyDate').value = isoToday(); $('noteBox').textContent = 'Редакция от ' + ruDate(isoToday()) + ' Шаблон, не юридическая консультация.'; generateModerationRules(); })();
Внедрим правила и модерацию на сайт

Опубликуем правила, добавим ссылки у форм отзывов и комментариев, настроим модерацию.

Обсудить проект