ОсновноеRadiotalkПользовательское
MPCHAT - CMS сервис чатов для профессионалов
95   •   Посмотреть все темы

[play]

 

3910
Дмитрий @Q-Tec
Киньте кто-нить рабочий вариант этого тега в безфрейсовый чат... а то на форуме половина не работает )))

0
1007
BETEPAH @BETEPAH
Это туда, где будет видео-окно (лучше всего под ник-лист):
<div id="mediains"></div>

а это в скрипты

  1. function f(room, cmd, nick, tonick, text, time, colornick, color, var9, var10, var11, var12, var13, var14) {
  2. if(ign_ok(nick) && cmd!=6 && cmd!=7) return 0;
  3. if(tonick==mynick && loaded==1)str_plus(1);
  4. // начало обработки тега media
  5. if (img_no == 0) {
  6. text = text.replace(/\[media\]((?:http|https):\/\/(.*?)\.(gif|jpg|jpeg|bmp|png|tif|tiff))\[\/media\]/mig, '<br><a href="$1" target="_blank" ><img onload=parent.imgminimum(this) src=$1 title="открыть в новом окне" alt="" border=0></a> ')
  7. } else {
  8. text = text.replace(/\[media\]((?:http|https):\/\/(.*?)\.(gif|jpg|jpeg|bmp|png|tif|tiff))\[\/media\]/mig, '<a href=./index.php?inc=go&url=$1 target=_blank><img src=http://mpchat.com/blank/img/ftp/img.gif border=0 alt=""> $2.$3</a>')
  9. };
  10. if (img_no == 1) {
  11. text = text.replace(/\[media\](http:\/\/(.*?))\[\/media\]/mig, '<a href=./index.php?inc=go&url=$1 target=_blank>$1</a>')
  12. };
  13. text = text.replace(/\[media\](http:\/\/zoom\.it\/(.*?))\[\/media\]/mig, '<script src="$1.js?width=auto&height=400px"></script><a href="$1" target="_blank" title="ссылка откроется в новом окне">link</a>');
  14. text = text.replace(/\[media\](http:\/\/www\.divshare\.com\/download\/(.*?))\[\/media\]/mig, '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="335" height="28" id="divplaylist">' + '<param name="movie" value="http://www.divshare.com/flash/playlist?myId=$2" />' + '<param name="allowScriptAccess" value="always" />' + '<embed src="http://www.divshare.com/flash/playlist?myId=$2" width="335" height="28" allowScriptAccess="always" name="divplaylist" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed>' + '</object>');
  15. text = text.replace(/\[media\](http:\/\/prostopleer\.com\/tracks\/(.*?))\[\/media\]/mig, '<object width="411" height="28"><param name="movie" value="http://embed.prostopleer.com/track?id=$2"></param><embed src="http://embed.prostopleer.com/track?id=$2" type="application/x-shockwave-flash" width="411" height="28"></embed></object>');
  16. text = text.replace(/\[media\]http:\/\/music\.yandex\.ru\/#!\/track\/(.*?)\/album\/(.*?)\[\/media\]/mig, '<object width="350" height="28"><param name="muz" value="http://music.yandex.ru/embed/$1/track.swf"/><param value="noscale" name="scale"/><param value="bg-color=%23D8D8D8&amp;text-color=%23555555&amp;hover-text-color=%23000000" name="flashvars"/><embed type="application/x-shockwave-flash" width="350" height="28" scale="noscale" flashvars="bg-color=%23D8D8D8&amp;text-color=%23555555&amp;hover-text-color=%23000000" src="http://music.yandex.ru/embed/$1/track.swf"/></object>');
  17. text = text.replace(/\[media\](http:\/\/.*mp3)\[\/media\]/mig, '<embed type="application/x-shockwave-flash" src="http://mpchat.com/blank/player.swf" allowfullscreen="false" flashvars="file=$1&autostart=false" width="250" height="20">');
  18. var vidregxp = []; //через запятую - название, регэксп, реплэйс, метод внедрения (1 - embed, 2 - iframe, 3 - embed через x-mplayer2)
  19. vidregxp[0] = ["videofile", "(http:\/\/(.*\\.)(rmi|wmv|midi|mid|mpg|wav|snd|wma|mpeg|avi|mpe|m1v|mpa|aifc|aiff|au|aif|swf))", "$1", 3];
  20. vidregxp[1] = ["flv", "(http:\/\/.*\\.flv)", '"http://mpchat.com/blank/player.swf" flashvars="file=$1&autostart=false"', 1];
  21. vidregxp[2] = ["rutube.ru", "(http:\/\/)(rutube\.ru\/)\\S+\\?v=(\\S+)", "$1video.$2$3", 1];
  22. vidregxp[3] = ["youtube.com", "(http:\/\/www\.youtube\.com\/)\\S+(\\?v|&amp;v)=(\\S+)", "$1v/$3&hl=ru_RU&fs=1", 1];
  23. vidregxp[4] = ["youtu.be", "(http:\/\/youtu\.be\/)(\\S+)", "http://www.youtube.com/embed/$2", 2];
  24. vidregxp[5] = ["lovi.tv", "(http:\/\/lovi\.tv\/video\/)\\S+?Code=(\\S+)", "$1sharer.php?Code=$2&Width=280&Height=224", 2];
  25. vidregxp[6] = ["lovi.tv2", "(http:\/\/loovi\.tv\/)video\/(\\S+)\/", "$1flash/player5.swf?config=/video/config.php?Code=$2", 1];
  26. vidregxp[7] = ["vimeo.com", "(http:\/\/vimeo\.com\/)(\\S+)", "$1moogaloop.swf?clip_id=$2&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1", 1];
  27. vidregxp[8] = ["metacafe.com", "(http:\/\/www\.metacafe\.com\/)watch(\\S+)\/?", "$1fplayer$2.swf", 1];
  28. vidregxp[9] = ["vids.myspace.com", "http:\/\/vids\.(myspace\.com\/)\\S+videoid=(\\S+)", "http://mediaservices.$1services/media/embed.aspx/m=$2,t=1,mt=video", 1];
  29. vidregxp[10] = ["video.google.com", "(http:\/\/video\.google\.com\/)\\S+docid=(\\S+)&\\S+", "$1googleplayer.swf?docid=$2&hl=ru&fs=true", 1];
  30. vidregxp[11] = ["dailymotion.com", "(http:\/\/www\.dailymotion\.com\/)video\/([^_+]+)\\S+", "$1swf/$2", 1];
  31. vidregxp[12] = ["5min.com", "http:\/\/www\.(5min\.com\/)\\S+-(\\d+)", "http://embed.$1$2/", 1];
  32. vidregxp[13] = ["video.mail.ru", "http:\/\/(video\.mail\.ru)\/(\\S+)\/(\\S+)\/(\\S+)\/(\\S+)\.html", "http://img.mail.ru/r/video2/player_v2.swf?par=http://content.$1/$2/$3/$4/$$$5$$0$39&imaginehost=$1&perlhost=$1&alias=$2&username=$3&albumid=$4&id=$5&catalogurl=http://video.mail.ru/themes/clips", 1];
  33. vidregxp[14] = ["gametrailers.com", "(http:\/\/www\.gametrailers\.com)\/\\S+\/(\\d+)", "$1/remote_wrap.php?umid=$2", 1];
  34. vidregxp[15] = ["video.yahoo.com", "(http:\/\/video\.yahoo\.com)\/watch\/(\\d+)\/(\\d+)", '"http://d.yimg.com/static.video.yahoo.com/yep/YV_YEP.swf?ver=2.2.46" flashVars="id=$3&vid=$2&lang=en-us&intl=us"', 1];
  35. vidregxp[16] = ["video.libero.it", "(http:\/\/video\.libero\.it)\/app\/\\S+id=(\\S+)", '"$1/static/swf/eltvplayer.swf?id=$2.flv&ap=0"', 1];
  36. vidregxp[17] = ["play.ukr.net", "(http:\/\/play\.ukr\.net)\/videos\/show\/(\\S+)\/", '"$1/player.swf?key=$2&StopAsking=0&self=0"', 1];
  37. vidregxp[18] = ["video.online.ua", "(http:\/\/video\.online\.ua)\/(\\S+)\/", '"http://i.online.ua/mplayer/player_logo.swf?file=$1/playlist/$2.xml&autostart=false&javascriptid=media_player&enablejs=true"', 1];
  38. vidregxp[19] = ["vision.rambler.ru", "(http:\/\/vision\.rambler\.ru)\/users\/(\\S+)\/", '"$1/i/e.swf?id=$2&logo=1&where=home"', 1];
  39. vidregxp[20] = ["video.bigmir.net", "(http:\/\/video\.bigmir\.net)\/show\/(\\S+)\/", '"$1/extplayer/$2/"', 1];
  40. vidregxp[21] = ["sibnet.ru", "http:\/\/(video\.sibnet\.ru)\/\\S*?video(\\d+)\/", '"http://$1/mediaplayer.swf" flashvars="file=http%3A%2F%2F$1%2Fupload%2Fvideo%2F$2.flv&amp;image=http%3A%2F%2F$1%2Fupload%2Fcover%2Fvideo_$2_0.jpg"', 1];
  41. vidregxp[22] = ["irc.lv", "(http:\/\/irc\.lv)\/video\\?(id=.*)", "$1/player.swf?$2", 1];
  42. vidregxp[23] = ["veoh.com", "(http:\/\/www\.veoh\.com\/)\\S+watch\/?%?3?D?(v\\S+)", "$1static/swf/webplayer/WebPlayer.swf?version=AFrontend.5.4.9.1006&permalinkId=$2&player=videodetailsembedded&videoAutoPlay=0&id=anonymous", 1];
  43. vidregxp[24] = ["gamestar.de", "(http:\/\/www\.gamestar\.de\/)\\S+=(\\d+)", "$1emb/player.swf?config=$1emb/getVideoData.cfm?vid=$2", 1];
  44. vidregxp[25] = ["spike.com", "(http:\/\/www\.spike\.com\/)video\/\\S+\/(\\S+)", '"$1efp" flashvars="flvbaseclip=$2"', 1];
  45. vidregxp[26] = ["sostav.ru", "(http:\/\/(?:www\.)?videosostav\.ru\/)video\/(\\S+)\/", "$1swf/hplayer.swf?fname=$2", 1];
  46. vidregxp[27] = ["vkontakte.ru", "(http:\/\/vkontakte\.ru\/video\\S+hash=\\w+)", "$1", 2];
  47. vidregxp[28] = ["vk.com", "(http:\/\/vk\.com\/video\\S+hash=\\w+)", "$1", 2];
  48. vidregxp[29] = ["smotri.com", "http:\/\/smotri\.com\/video\/\\S+id=(\\S+)", "http://pics.smotri.com/player.swf?file=$1&bufferTime=3&autoStart=false&str_lang=rus&xmlsource=http%3A%2F%2Fpics.smotri.com%2Fcskins%2Fblue%2Fskin_color.xml&xmldatasource=http%3A%2F%2Fpics.smotri.com%2Fskin_ng.xml", 1];
  49. t = text.split('[media]');
  50. if (t[1]) {
  51. var viwidth = 280, //ширина видеоокна
  52. viheight = 224, //высота видеоокна
  53. viwindow = document.getElementById('mediains');
  54. t2 = t[1].split('[/media]');
  55. if (t2[0]) {
  56. var src = t2[0];
  57. var expr;
  58. for (var i = 0; i < vidregxp.length; i++) {
  59. expr = new RegExp(vidregxp[i][1]);
  60. if (src.match(expr)) {
  61. src = src.replace(expr, vidregxp[i][2]);
  62. viwindow.style.display = 'block';
  63. if (vidregxp[i][3] == 1) { //грузим в embed через x-shockwave-flash
  64. text = text.replace('[media]' + t2[0] + '[/media]', '<a href="' + t2[0] + '" target="_blank" title="ссылка откроется в новом окне">Видеоролик загружен!</a>');
  65. viwindow.innerHTML = '<embed width=' + viwidth + ' height=' + viheight + ' src=' + src + ' type="application/x-shockwave-flash" allowscriptaccess=always allowfullscreen=true></embed>';
  66. }
  67. if (vidregxp[i][3] == 2) { //грузим в iframe
  68. text = text.replace('[media]' + t2[0] + '[/media]', '<a href="' + t2[0] + '" target="_blank" title="ссылка откроется в новом окне">Видеоролик загружен!</a>');
  69. viwindow.innerHTML = '<iframe width=' + viwidth + ' height=' + viheight + ' src=' + src + ' frameborder=0 allowfullscreen></iframe>';
  70. }
  71. if (vidregxp[i][3] == 3) { //грузим в embed через x-mplayer2
  72. text = text.replace('[media]' + t2[0] + '[/media]', '<a href="' + t2[0] + '" target="_blank" title="ссылка откроется в новом окне">Видеоролик загружен!</a>');
  73. viwindow.innerHTML = '<embed width=' + viwidth + ' height=' + viheight + ' src=' + src + ' type="application/x-mplayer2" allowscriptaccess=always allowfullscreen=true></embed>';
  74. }
  75. }
  76. }
  77. text = text.replace('[media]' + t2[0] + '[/media]', '<a href="' + t2[0] + '" target="_blank" title="ссылка откроется в новом окне">' + t2[0] + '</a>');
  78. } else {
  79. text = 'Просмотр выключен';
  80. viwindow.innerHTML = '';
  81. viwindow.style.display = 'none';
  82. }
  83. }
  84. // конец обработки тега media

Ставить в функцию function f(). Первые три строчки из процитированных - стандартные, привёл их, чтоб было понятно, куда ставить. Копировать начиная с "// начало обработки тега media"

обрабатывает картинки (при наличии в скриптах функции imgminimum), музыку (как прямые ссылки, так и сервис простоплеера и divshare) и видео (с перечнем видеохостингов думаю всё понятно из скрипта).

Отредактировано BETEPAH - 21.06.2012
0
3910
Дмитрий @Q-Tec
BETEPAH, них.. се.. спасибо большое ))
P.S. Домен вконтакте.ру уже давно не используется.. меняем на вк.ком)))

Отредактировано Q-Tec - 15.06.2012
0
467
Lexa @Like
BETEPAH, Это Диджей плеер ООо?

0
1007
BETEPAH @BETEPAH
Q-Tec пишет:

P.S. Домен вконтакте.ру уже давно не используется.. меняем на вк.ком)))

Вконтактом не пользуюсь, честно говоря. Попросили когда-то - я добавил, после выходных пересмотрю 😉
самые востребованные в моем чате - простоплеер, дившар, прямые ссылки на изображения и музыку, ютуб и рутуб... Остальные скорее просто "чтоб было" 😉
lex пишет:

BETEPAH, Это Диджей плеер ООо?

Я не знаю, что такое диджей плеер.
Этот код заменяет [media]ссылка[/media] на проигрывающий плеер. Например, [media]http://prostopleer.com/tracks/5073547wgrn[/media].

Отредактировано BETEPAH - 15.06.2012
0
9260
Евгений @starkon
Во вконтакте не зареген, но вопрос, как ссылку на видео вытаскивать? Нашел кнопку поделиться и выдает код, а в нем еще нужно саму ссылку скопировать.. не удобно.. есть еще какие то варианты?

0
1007
BETEPAH @BETEPAH
starkon пишет:

Во вконтакте не зареген, но вопрос, как ссылку на видео вытаскивать? Нашел кнопку поделиться и выдает код, а в нем еще нужно саму ссылку скопировать.. не удобно.. есть еще какие то варианты?

Варианты есть 😉 Где-то здесь мы уже обсуждали как лучше вконтакт-видео вставлять. На этот случай у меня еще такой код есть
  1. // конец обработки тега media
  2. t = text.split('&lt;iframe src=&quot;');
  3. if (t[1]) {
  4. t2 = t[1].split('&quot; width=&quot;607&quot; height=&quot;360&quot; frameborder=&quot;0&quot;&gt;&lt;/iframe&gt;');
  5. if (t2[0].substr(0, 25) == 'http://vkontakte.ru/video') {
  6. text = text.replace('&lt;iframe src=&quot;' + t2[0] + '&quot; width=&quot;607&quot; height=&quot;360&quot; frameborder=&quot;0&quot;&gt;&lt;/iframe&gt;', '<a href="' + t2[0] + '" target="_blank" title="ссылка откроется в новом окне">Видеоролик загружен!</a> ');
  7. document.getElementById('mediains').innerHTML = '<iframe src="' + t2[0] + '" width="280" height="224" frameborder="0"></iframe>';
  8. }
  9. }

Он понимает "поделиться-код" без тегов. Точнее, понимал раньше.
Дайте кто-нибудь код на какое-нибудь видео и я попробую осовременнить скрипт под новый домен.

Отредактировано BETEPAH - 21.06.2012
0
3910
Дмитрий @Q-Tec
BETEPAH, юзай

<iframe src="http://vk.com/video_ext.php?oid=13564673&id=162748388&hash=e94f88c62f6cd152&hd=3" width="607" height="360" frameborder="0"></iframe>

0
1007
BETEPAH @BETEPAH
Q-Tec пишет:

BETEPAH, юзай

<iframe src="http://vk.com/video_ext.php?oid=13564673&id=162748388&hash=e94f88c62f6cd152&hd=3" width="607" height="360" frameborder="0"></iframe>

вот скрипт для подобного кода
  1. t = text.split('&lt;iframe src=&quot;');
  2. if (t[1]) {
  3. t2 = t[1].split('&quot; width=&quot;607&quot; height=&quot;360&quot; frameborder=&quot;0&quot;&gt;&lt;/iframe&gt;');
  4. if (t2[0].substr(0, 19) == 'http://vk.com/video') {
  5. text = text.replace('&lt;iframe src=&quot;' + t2[0] + '&quot; width=&quot;607&quot; height=&quot;360&quot; frameborder=&quot;0&quot;&gt;&lt;/iframe&gt;', '<a href="' + t2[0] + '" target="_blank" title="ссылка откроется в новом окне">Видеоролик загружен!</a> ');
  6. document.getElementById('mediains').innerHTML = '<iframe src="' + t2[0] + '" width="280" height="224" frameborder="0"></iframe>';
  7. }
  8. }

Регулярное выражение для чистой ссылки добавил в основной скрипт.

Отредактировано BETEPAH - 21.06.2012
0
215
Rafer @Rafer
BETEPAH, Помоги пожалуйста по-порядку разобраться со своим скриптом выше. media

0
1007
BETEPAH @BETEPAH
SysRq пишет:

BETEPAH, Помоги пожалуйста по-порядку разобраться со своим скриптом выше. media

спрашивайте

0
215
Rafer @Rafer
BETEPAH, Можете расписать, что куда ставить. Какая последовательность. Ну суть вы поняли, что я хочу.

0
1007
BETEPAH @BETEPAH
SysRq пишет:

BETEPAH, Можете расписать, что куда ставить. Какая последовательность. Ну суть вы поняли, что я хочу.

Во втором сообщении этой ветки написано же 😉
Скрипт
// начало обработки тега media
...
// конец обработки тега media

ставится в функцию f() - это в Модерация - скрипты чата - /* [Функция - вывода сообщений и команд] */
Блок видео-окна ставить туда, где хотите, чтоб воспроизводилось видео. У меня, например, он стоит под ник-листом.
Это Шаблоны - чат внутри - <div id=users></div>сюда
Как только кто-то загружает обрамленную тегом media ссылку на видео-хостинг из тех, что есть в массиве vidregxp скрипта, в этот блок загружается видео.
Если отправить пустой тег [media][/media], блок видео-окна скрывается у всех.
Если загружается ссылка на изображение в этом же теге, это изображение показывается в ленте сообщений чата.
Если загружается ссылка на музыку, проигрыватель показывается также в самом сообщении, вместо ссылки.

Я уж не знаю, как подробнее расписывать 😉

0
215
Rafer @Rafer
BETEPAH, Спасибо большое.

0
215
Rafer @Rafer
Чат не грузит, поставил вот так:
  1. /* Конец функции f() */
  2. function f(room, cmd, nick, tonick, text, time, colornick, color, var9, var10, var11, var12, var13, var14) {
  3. if(ign_ok(nick) && cmd!=6 && cmd!=7) return 0;
  4. if(tonick==mynick && loaded==1)str_plus(1);
  5. // начало обработки тега media
  6. if (img_no == 0) {
  7. text = text.replace(/\[media\]((?:http|https):\/\/(.*?)\.(gif|jpg|jpeg|bmp|png|tif|tiff))\[\/media\]/mig, '<br><a href="$1" target="_blank" ><img onload=parent.imgminimum(this) src=$1 title="открыть в новом окне" alt="" border=0></a> ')
  8. } else {
  9. text = text.replace(/\[media\]((?:http|https):\/\/(.*?)\.(gif|jpg|jpeg|bmp|png|tif|tiff))\[\/media\]/mig, '<a href=./index.php?inc=go&url=$1 target=_blank><img src=http://mpchat.com/blank/img/ftp/img.gif border=0 alt=""> $2.$3</a>')
  10. };
  11. if (img_no == 1) {
  12. text = text.replace(/\[media\](http:\/\/(.*?))\[\/media\]/mig, '<a href=./index.php?inc=go&url=$1 target=_blank>$1</a>')
  13. };
  14. text = text.replace(/\[media\](http:\/\/zoom\.it\/(.*?))\[\/media\]/mig, '<script src="$1.js?width=auto&height=400px"></script><a href="$1" target="_blank" title="ссылка откроется в новом окне">link</a>');
  15. text = text.replace(/\[media\](http:\/\/www\.divshare\.com\/download\/(.*?))\[\/media\]/mig, '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="335" height="28" id="divplaylist">' + '<param name="movie" value="http://www.divshare.com/flash/playlist?myId=$2" />' + '<param name="allowScriptAccess" value="always" />' + '<embed src="http://www.divshare.com/flash/playlist?myId=$2" width="335" height="28" allowScriptAccess="always" name="divplaylist" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed>' + '</object>');
  16. text = text.replace(/\[media\](http:\/\/prostopleer\.com\/tracks\/(.*?))\[\/media\]/mig, '<object width="411" height="28"><param name="movie" value="http://embed.prostopleer.com/track?id=$2"></param><embed src="http://embed.prostopleer.com/track?id=$2" type="application/x-shockwave-flash" width="411" height="28"></embed></object>');
  17. text = text.replace(/\[media\]http:\/\/music\.yandex\.ru\/#!\/track\/(.*?)\/album\/(.*?)\[\/media\]/mig, '<object width="350" height="28"><param name="muz" value="http://music.yandex.ru/embed/$1/track.swf"/><param value="noscale" name="scale"/><param value="bg-color=%23D8D8D8&amp;text-color=%23555555&amp;hover-text-color=%23000000" name="flashvars"/><embed type="application/x-shockwave-flash" width="350" height="28" scale="noscale" flashvars="bg-color=%23D8D8D8&amp;text-color=%23555555&amp;hover-text-color=%23000000" src="http://music.yandex.ru/embed/$1/track.swf"/></object>');
  18. text = text.replace(/\[media\](http:\/\/.*mp3)\[\/media\]/mig, '<embed type="application/x-shockwave-flash" src="http://mpchat.com/blank/player.swf" allowfullscreen="false" flashvars="file=$1&autostart=false" width="250" height="20">');
  19. var vidregxp = []; //через запятую - название, регэксп, реплэйс, метод внедрения (1 - embed, 2 - iframe, 3 - embed через x-mplayer2)
  20. vidregxp[0] = ["videofile", "(http:\/\/(.*\\.)(rmi|wmv|midi|mid|mpg|wav|snd|wma|mpeg|avi|mpe|m1v|mpa|aifc|aiff|au|aif|swf))", "$1", 3];
  21. vidregxp[1] = ["flv", "(http:\/\/.*\\.flv)", '"http://mpchat.com/blank/player.swf" flashvars="file=$1&autostart=false"', 1];
  22. vidregxp[2] = ["rutube.ru", "(http:\/\/)(rutube\.ru\/)\\S+\\?v=(\\S+)", "$1video.$2$3", 1];
  23. vidregxp[3] = ["youtube.com", "(http:\/\/www\.youtube\.com\/)\\S+(\\?v|&amp;v)=(\\S+)", "$1v/$3&hl=ru_RU&fs=1", 1];
  24. vidregxp[4] = ["youtu.be", "(http:\/\/youtu\.be\/)(\\S+)", "http://www.youtube.com/embed/$2", 2];
  25. vidregxp[5] = ["lovi.tv", "(http:\/\/lovi\.tv\/video\/)\\S+?Code=(\\S+)", "$1sharer.php?Code=$2&Width=280&Height=224", 2];
  26. vidregxp[6] = ["lovi.tv2", "(http:\/\/loovi\.tv\/)video\/(\\S+)\/", "$1flash/player5.swf?config=/video/config.php?Code=$2", 1];
  27. vidregxp[7] = ["vimeo.com", "(http:\/\/vimeo\.com\/)(\\S+)", "$1moogaloop.swf?clip_id=$2&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1", 1];
  28. vidregxp[8] = ["metacafe.com", "(http:\/\/www\.metacafe\.com\/)watch(\\S+)\/?", "$1fplayer$2.swf", 1];
  29. vidregxp[9] = ["vids.myspace.com", "http:\/\/vids\.(myspace\.com\/)\\S+videoid=(\\S+)", "http://mediaservices.$1services/media/embed.aspx/m=$2,t=1,mt=video", 1];
  30. vidregxp[10] = ["video.google.com", "(http:\/\/video\.google\.com\/)\\S+docid=(\\S+)&\\S+", "$1googleplayer.swf?docid=$2&hl=ru&fs=true", 1];
  31. vidregxp[11] = ["dailymotion.com", "(http:\/\/www\.dailymotion\.com\/)video\/([^_+]+)\\S+", "$1swf/$2", 1];
  32. vidregxp[12] = ["5min.com", "http:\/\/www\.(5min\.com\/)\\S+-(\\d+)", "http://embed.$1$2/", 1];
  33. vidregxp[13] = ["video.mail.ru", "http:\/\/(video\.mail\.ru)\/(\\S+)\/(\\S+)\/(\\S+)\/(\\S+)\.html", "http://img.mail.ru/r/video2/player_v2.swf?par=http://content.$1/$2/$3/$4/$$$5$$0$39&imaginehost=$1&perlhost=$1&alias=$2&username=$3&albumid=$4&id=$5&catalogurl=http://video.mail.ru/themes/clips", 1];
  34. vidregxp[14] = ["gametrailers.com", "(http:\/\/www\.gametrailers\.com)\/\\S+\/(\\d+)", "$1/remote_wrap.php?umid=$2", 1];
  35. vidregxp[15] = ["video.yahoo.com", "(http:\/\/video\.yahoo\.com)\/watch\/(\\d+)\/(\\d+)", '"http://d.yimg.com/static.video.yahoo.com/yep/YV_YEP.swf?ver=2.2.46" flashVars="id=$3&vid=$2&lang=en-us&intl=us"', 1];
  36. vidregxp[16] = ["video.libero.it", "(http:\/\/video\.libero\.it)\/app\/\\S+id=(\\S+)", '"$1/static/swf/eltvplayer.swf?id=$2.flv&ap=0"', 1];
  37. vidregxp[17] = ["play.ukr.net", "(http:\/\/play\.ukr\.net)\/videos\/show\/(\\S+)\/", '"$1/player.swf?key=$2&StopAsking=0&self=0"', 1];
  38. vidregxp[18] = ["video.online.ua", "(http:\/\/video\.online\.ua)\/(\\S+)\/", '"http://i.online.ua/mplayer/player_logo.swf?file=$1/playlist/$2.xml&autostart=false&javascriptid=media_player&enablejs=true"', 1];
  39. vidregxp[19] = ["vision.rambler.ru", "(http:\/\/vision\.rambler\.ru)\/users\/(\\S+)\/", '"$1/i/e.swf?id=$2&logo=1&where=home"', 1];
  40. vidregxp[20] = ["video.bigmir.net", "(http:\/\/video\.bigmir\.net)\/show\/(\\S+)\/", '"$1/extplayer/$2/"', 1];
  41. vidregxp[21] = ["sibnet.ru", "http:\/\/(video\.sibnet\.ru)\/\\S*?video(\\d+)\/", '"http://$1/mediaplayer.swf" flashvars="file=http%3A%2F%2F$1%2Fupload%2Fvideo%2F$2.flv&amp;image=http%3A%2F%2F$1%2Fupload%2Fcover%2Fvideo_$2_0.jpg"', 1];
  42. vidregxp[22] = ["irc.lv", "(http:\/\/irc\.lv)\/video\\?(id=.*)", "$1/player.swf?$2", 1];
  43. vidregxp[23] = ["veoh.com", "(http:\/\/www\.veoh\.com\/)\\S+watch\/?%?3?D?(v\\S+)", "$1static/swf/webplayer/WebPlayer.swf?version=AFrontend.5.4.9.1006&permalinkId=$2&player=videodetailsembedded&videoAutoPlay=0&id=anonymous", 1];
  44. vidregxp[24] = ["gamestar.de", "(http:\/\/www\.gamestar\.de\/)\\S+=(\\d+)", "$1emb/player.swf?config=$1emb/getVideoData.cfm?vid=$2", 1];
  45. vidregxp[25] = ["spike.com", "(http:\/\/www\.spike\.com\/)video\/\\S+\/(\\S+)", '"$1efp" flashvars="flvbaseclip=$2"', 1];
  46. vidregxp[26] = ["sostav.ru", "(http:\/\/(?:www\.)?videosostav\.ru\/)video\/(\\S+)\/", "$1swf/hplayer.swf?fname=$2", 1];
  47. vidregxp[27] = ["vkontakte.ru", "(http:\/\/vkontakte\.ru\/video\\S+hash=\\w+)", "$1", 2];
  48. vidregxp[28] = ["vk.com", "(http:\/\/vk\.com\/video\\S+hash=\\w+)", "$1", 2];
  49. vidregxp[29] = ["smotri.com", "http:\/\/smotri\.com\/video\/\\S+id=(\\S+)", "http://pics.smotri.com/player.swf?file=$1&bufferTime=3&autoStart=false&str_lang=rus&xmlsource=http%3A%2F%2Fpics.smotri.com%2Fcskins%2Fblue%2Fskin_color.xml&xmldatasource=http%3A%2F%2Fpics.smotri.com%2Fskin_ng.xml", 1];
  50. t = text.split('[media]');
  51. if (t[1]) {
  52. var viwidth = 280, //ширина видеоокна
  53. viheight = 224, //высота видеоокна
  54. viwindow = document.getElementById('mediains');
  55. t2 = t[1].split('[/media]');
  56. if (t2[0]) {
  57. var src = t2[0];
  58. var expr;
  59. for (var i = 0; i < vidregxp.length; i++) {
  60. expr = new RegExp(vidregxp[i][1]);
  61. if (src.match(expr)) {
  62. src = src.replace(expr, vidregxp[i][2]);
  63. viwindow.style.display = 'block';
  64. if (vidregxp[i][3] == 1) { //грузим в embed через x-shockwave-flash
  65. text = text.replace('[media]' + t2[0] + '[/media]', '<a href="' + t2[0] + '" target="_blank" title="ссылка откроется в новом окне">Видеоролик загружен!</a>');
  66. viwindow.innerHTML = '<embed width=' + viwidth + ' height=' + viheight + ' src=' + src + ' type="application/x-shockwave-flash" allowscriptaccess=always allowfullscreen=true></embed>';
  67. }
  68. if (vidregxp[i][3] == 2) { //грузим в iframe
  69. text = text.replace('[media]' + t2[0] + '[/media]', '<a href="' + t2[0] + '" target="_blank" title="ссылка откроется в новом окне">Видеоролик загружен!</a>');
  70. viwindow.innerHTML = '<iframe width=' + viwidth + ' height=' + viheight + ' src=' + src + ' frameborder=0 allowfullscreen></iframe>';
  71. }
  72. if (vidregxp[i][3] == 3) { //грузим в embed через x-mplayer2
  73. text = text.replace('[media]' + t2[0] + '[/media]', '<a href="' + t2[0] + '" target="_blank" title="ссылка откроется в новом окне">Видеоролик загружен!</a>');
  74. viwindow.innerHTML = '<embed width=' + viwidth + ' height=' + viheight + ' src=' + src + ' type="application/x-mplayer2" allowscriptaccess=always allowfullscreen=true></embed>';
  75. }
  76. }
  77. }
  78. text = text.replace('[media]' + t2[0] + '[/media]', '<a href="' + t2[0] + '" target="_blank" title="ссылка откроется в новом окне">' + t2[0] + '</a>');
  79. } else {
  80. text = 'Просмотр выключен';
  81. viwindow.innerHTML = '';
  82. viwindow.style.display = 'none';
  83. }
  84. }
  85. // конец обработки тега media
  86. }

0
1007
BETEPAH @BETEPAH
SysRq пишет:

Чат не грузит, поставил вот так:

А при чем здесь /* Конец функции f() */ ? И откуда после конца функции появилось снова ее начало?

0
1007
BETEPAH @BETEPAH
Скрипт кнопки (спасибо, ridz):
<script>
function htags(t1,t2){
var mess=document.fmsg.text0.value;
if(mess.search("http")!=-1){mess = mess.replace(/(http\S+)/mig, " "+t1+"$1"+t2+" ")} else {mess+=" "+t1+t2+" "};
document.fmsg.text0.value=mess;
document.fmsg.text0.focus();
}
</script>

Оформление - зависит от вашей фантазии, у меня так
<div class="abcabc_in" style="cursor:pointer" onclick="htags('[media]','[/media]')" title="Показать в чате картинку, видео или музыку"></div>

0
215
Rafer @Rafer
В: Как закрыть трансляцию видео?

0
9260
Евгений @starkon
SysRq пишет:

В: Как закрыть трансляцию видео?

Для всех отправить пустой тег медиа, если только для себя то в приват тот же тег.

0
1007
BETEPAH @BETEPAH
SysRq, скажите, вы вообще читаете, что я пишу?
BETEPAH пишет:

Если отправить пустой тег [media][/media], блок видео-окна скрывается у всех.

Ребят, извините, но я не буду поддерживать этот код. Он у меня работает, по доброте душевной решил поделиться. Если у кого-то что-то не работает, смело удаляйте скрипт, у меня нет времени разжевывать по несколько раз одно и тоже.

0





Согласие на обработку данных на нашем сайте

Продолжая просматривать страницу, вы соглашаетесь с использованием файлов «Cookie» и с Политикой конфиденциальности «Privacy».
Наверху или внизу страницы вы можете изменить валюту и язык по умолчанию. Английская версия сайта ещё находится в доработке и доступна не полностью.