Видео с Вконтакте через BB-код
827материалов
228тем на форуме
3003комментария
6152пользователя

Видео с Вконтакте через BB-код



С помощью данного скрипта можно спокойно пользователям разрешить добавление видео с Вконтакте в комментариях или сообщениях. Скрипт реализован на jQuery на регулярных выражениях. 

Установка: 

Вставляем на "Страница материала и комментариев к нему" перед </body> или в "Общий вид страниц форума" после $BODY$: 
Код
<script>   
var vk_width = 607, vk_height = 360, vk_align = 'center';   
   function vk_parse() {   
   $('.cmessages').each(function() {   
   $(this).html($(this).html().replace(/\[vk\](.*)\[\/vk\]/g, '<div align="' + vk_align + '"><iframe src="$1" width="' + vk_width + 'px" height="' + vk_height + 'px" frameborder="0"></iframe></div>'))   
   });   
}   
   $(function() {   
   vk_parse()   
});   
   $('#addcBut').click(function() {   
   setTimeout(function(){vk_parse()}, 1000)   
});   
</script>

Настройки скрипта 

Обнесите в виде материалов текст комментария/поста в класс cmessages. Например, так: 
Код
<div class="cmessages">$COM_BODY$</div>

vk_width - ширина плеера; 
vk_height -высота плеера; 
vk_align - выравнивание плеера (left, center, right); 

Также добавлено преобразование ссылки после добавления нового комментария. На форуме так и так произойдёт редирект. 

Если кому-то нужна ещё кнопка бб-кода, то вот она:
Код
<input type="button" title="VK Video" value="vk" onclick="simpletag('vk','','','message','')" class="codeButtons" id="vk" />

Информация о коде 

Как работает данный скрипт? На самом деле регулярные выражения - очень мощная вещь, если понимать как они работают. Функция .replace() 
принимает 2 аргумента (на самом деле не 2 :D), первый - регулярное выражение, второе - шаблон вывода. В нашем случае регулярное выражение такое: /\[vk\](.*)\[\/vk\]/g

Разберём его по частям: 

/регулярное выражение/ - само объявление регулярки; 
g - параметр регулярного выражения - глобальный поиск, то есть заменятся все совпадения, а не только первое; 
\[vk\] - начало бб-кода, а обратные слеши используем для экранизации квадратных скобок (они являются спецсимволами регулярок); 
(.*) - содержимое бб-кода, круглые скобки означают искомое значение, точка - содержится хотя бы один символ, звезда - любое количество символов; 
\[\/vk\] - закрытие бб-кода, слеш также является спецсимволов регулярок, поэтому экранизируем и его. 
$1 - номер возращаемого искомого значения, в нашем случае мы искали содержимое бб-кода и круглые скобки возвращают его значение. 
.each() - Выполняет функцию для каждого из выбранных элементов.

ЗАКАЗАТЬ УСТАНОВКУ

Скрипт опубликовал:
...
Логин на сайте: ...
Группа: ...
Статус: ...
Информация о скрипте:
Дата добавления материала: 08.06.2013 в 12:55
Материал просмотрен: 944 раза
Категория материала: Скрипты для uCoz
К материалу оставлено: 0 комментариев

Пожаловаться
Сказать спасибо

0 комментариев


avatar
Вход через социальные сети
Работа в компании uCoz
uSocial - социальные кнопки
uLike – кнопка «Мне нравится»
Статистики нашего сайта