Главная » Файлы » Скрипты для uCoz » Другие скрипты |
Исправление глючного редактирования материалов, если они были добавлены в режиме html + bb коды by Apocalypse для uCoz
24.06.14, 10:17:08 | |
![]() Есть в модулях uCoz такая убогая оплошность, если человек добавляет материал в режиме html + bb коды. Все ВВ коды преобразуются в html, все переносы в тег br, все скобки и спецсимволы в ASCII аналоги. В результате вы практически не в состоянии отредактировать материал, если использовали в нём много вв кодов. Получается белиберда типа: ![]() Я написал в предложения системы uCoz, чтобы они предприняли меры, а сам пока что написал простенький костыль, который решает проблему и приводит редактирование к вот такому замечательному виду: ![]() В итоге мы получаем отличный, практически идеентичный исходному варианту, код, который редактировать одно удовольствие Установка: На странице добавления/редактирования материала в нужных модулях в самый низ после /body вставляйте: Код <script> // Исправление глючного редактирования материалов by Apocalypse $('* textarea').each(function() { $(this).val($(this).val() .replace(/\<\!\-\-uzcode\-\-\>\<div class\=\"bbCodeBlock\"\>\<div class\=\"bbCodeName\" style\=\"padding\-left\:5px\;font\-weight\:bold\;font\-size\:7pt\"\>Code\<\/div\>\<div class\=\"codeMessage\" style=\"border\:1px inset\;max\-height\:200px\;overflow\:auto\;height\:expression\(this\.scrollHeight\<5\?this\.style\.height\:scrollHeight\>200\?\'200px\'\:\'\'\+\(this\.scrollHeight\+5\)\+\'px\'\)\;\"\>\<\!\-\-uzc\-\-\>/gi, '[code]') .replace(/\<\!\-\-\/uzc\-\-\>\<\/div\>\<\/div\>\<\!\-\-\/uzcode\-\-\>/gi, '[/code]') .replace(/\<\!\-\-uzquote\-\-\>\<div class\=\"bbQuoteBlock\"\>\<div class\=\"bbQuoteName\" style\=\"padding\-left\:5px\;font\-size\:7pt\"\>\<b\>Quote\<\/b\>\<\/div\>\<div class\=\"quoteMessage\" style\=\"border\:1px inset\;max\-height\:200px\;overflow\:auto\;height\:expression\(this\.scrollHeight\<5\?this\.style\.height\:scrollHeight\>200\?\'200px\'\:\'\'\+\(this\.scrollHeight\+5\)\+\'px\'\)\;\"\>\<\!\-\-uzq\-\-\>/gi, '[quote]') .replace(/\<\!\-\-\/uzq\-\-\>\<\/div\>\<\/div\>\<\!\-\-\/uzquote\-\-\>/gi, '[/quote]') .replace(/\<div align\=\"center\"\>(.+?)\<\/div>/gi, '[c]$1[/c]') .replace(/\<div align\=\"left\"\>(.+?)\<\/div>/gi, '[l]$1[/l]') .replace(/\<div align\=\"right\"\>(.+?)\<\/div>/gi, '[r]$1[/r]') .replace(/\<i\>(.+?)\<\/i>/gi, '[i]$1[/i]') .replace(/\<u\>(.+?)\<\/u>/gi, '[u]$1[/u]') .replace(/\<s\>(.+?)\<\/s>/gi, '[s]$1[/s]') .replace(/\<b\>(.+?)\<\/b\>/gi, '[b]$1[/b]') .replace(/\<ul\>/gi, '[list]') .replace(/\<\/ul\>/gi, '[/list]') .replace(/\<li\>(.+?)/gi, '[*]$1') .replace(/\<img src\=\"(.+?)\" border\=\"0\" alt\=\"\"\/\>/gi, '[img]$1[/img]') .replace(/\<a class\=\"link\" href\=\"(.+?)\" rel\=\"nofollow\" target\=\"\_blank\"\>(.+?)\<\/a\>/gi, '[url=$1]$2[/url]') .replace(/\<span style\=\"color\:(.+?)\"\>(.+?)\<\/span\>/gi, '[color=$1]$2[/color]') .replace(/\<span style\=\"font\-size\:(.+?)\;\"\>(.+?)\<\/span\>/gi, '[size=$1]$2[/size]') .replace(/\<br \/\>/gi, '\n') .replace(/\&\#41\;/gi, ')') .replace(/\&\lt\;/gi, '<') .replace(/\&\#92\;/gi, '\\') .replace(/\&nbs\p\;/gi, '') .replace(/\&\#58;/gi, ':') ); }); // ApoTeam (c) 2012 </script> Данный скрипт рассчитан на все модули без исключения. Я постарался охватить как можно больше вв кодов, чтобы скрипт работал максимально эффективно. При использовании такого способа replace в ваших скриптах, прошу вставлять копирайт ApoTeam© 2012 Материал разработан и подготовлен Apocalypse | |
Просмотров: 729 | Загрузок: 0 | |
Всего комментариев: 0 | |
| |