Решил сделать что-то полезное для сервиса из давно обещанного,
Есть конечно поделки и тут на mybb, но без гарантий, что один из
кодов сломает всю страницу. Попробовал в этом проекте избежать
подобного.ююююююююююююююююююююююююююююю
Безопасный HTML в постах для произвольного юзера
Общее описание:
Есть два вида запуска:
1. По кнопке и
2. Автоматом по мере загрузки страницы
По кнопке для произвольного юзера и в произвольном форуме,
Для автоматического запуска отводятся специально означенные форумы(Хотя, хоть все отдайте под автозапуск - Ваше право, но имхо имел опыт, когда флудили, к примеру, alert(том). А гасить кучу всплывающих окон - не Айс!
Можно выделенным никам дать полный доступ(на автозапуск) во всех форумах, к примеру для Админов и опытных пользователях, доверенных юзеров на дизайнерских форумах и т.д..
!Для Ников нарушителей можно вообще запретить автозапуск.
Теперь кривой код в HTML (я надеюсь, что случайный), например отсутствие закрывающегося тега </div>, - не сломает страницу!
Описание Установки:
В Самое начало HTML верх ставим коды:
<script id="HTMLinPost" type="text/javascript">
autoUserHTMLForums = [1,4,2]; // ID форумов с доступом к автозапуску;
Allaccess = "Deff,Лесси"; // Ники с полным доступом к автозапуску на всём форуме;
NOaccess = "Enlil,Frejer"; // Ники без доступа к автозапуску;
LinkFAQ = "http://forum.mybb.ru/viewtopic.php?id=34820";
if("setframeHeight"==window.name&&this.document!==top.document&&!(document.URL.indexOf("http://"+location.hostname+"/viewtopic.php?id=300000#"))){
window.top.setHeightForhtmlFrame(location.hash);$("<style>body{}</style>").appendTo("head");
$("head,body").find("link").attr("disabled",1);document.write('</div></div></div></div><div style="display:none"><plaintext>')}</script>
<script type="text/javascript" src="http://forumstatic.ru/files/0013/66/53/37983.js"></script>
Cиним, ссылка на данную тему, для вопросов от пользователей скрипта,
о которой скажу далее...
Кнопка обрамления в BB-теги исходного HTML кода, теперь спрятана в наборе кнопки => ,сразу за строкой "Поясняющий текст";
(Там же с краю и наша синяя ссылка, указанная последнем параметром в нашем скрипте, некоторые возможно захотят заменить её на пояснения и дополнения в теме на своём форуме!
По умолчанию вид обрамления BB-тегами соответствует запуску HTML с помощью кнопки
........ Для того, чтобы выполнялся автозапуск кода нужно добавить в теги +
[quote=HTML+][code]<style type="text/css">body{background:red;}</style>[/code][/quote]
Добавлено спустя 2 месяца 14 дней 21 час 44 минуты 33 секунды:
Важно:!
PS: При перегруженности картинками на странице, может появится прокрутка во фрейме с HTML кодом, из-за раннего определения высоты фрейма раньше полной загрузки картинок!
В качестве лекарства выставляем явную высоту HTML кода( перед самым контентом вставляемого HTML)<style type="text/css">body{min-height:214px}</style>
Цифру 214 подбираем-проставляем для Вашего каждого конкретного кода HTML
Тут кому-то потребовалось:
Cтавим в HTML в форме ответа:
<style type="text/css">
#addition-area div[onclick*="quote=HTML"] a{
display:none;
}
</style>
Отредактировано Deff (Вс, 2 Ноя 2014 15:28:11)