Перейти к содержанию
CMSTOOLS.org - форум поддержки и развития CMS

Рекомендуемые сообщения

Как мы все знаем в вии видео можно добавить тк с началом на http, после установки эта проблема решится!

 

 

 

В videos.php найти:

         case "send":
            NoAjaxQuery();

           
И ниже найти:

 

                //Если youtube то добавляем префикс src=" и составляем ответ для скрипта, для вставки в БД
                if(preg_match("/src=\"http:\/\/www.youtube.com|src=\"http:\/\/youtube.com/i", 'src="'.$good_video_lnk)){
                    $good_video_lnk = str_replace(array('#', '!'), '', $good_video_lnk);
                    $exp_y = explode('v=', $good_video_lnk);
                    $exp_x = explode('&', $exp_y[1]);
                    $result_video_lnk = '<iframe width="770" height="420" src="http://www.youtube.com/embed/'.$exp_x[0].'" frameborder="0" allowfullscreen></iframe>';
                }
                
                //Если rutube, То добавляем префикс value="
                if(preg_match("/value=\"http:\/\/www.rutube.ru|value=\"http:\/\/rutube.ru/i", 'value="'.$good_video_lnk)){
                    $exp_frutube = explode('?v=', $good_video_lnk);
                    $result_video_lnk = '<OBJECT width="770" height="420"><PARAM name="movie" value="http://video.rutube.ru/'.$exp_frutube[1].'"></PARAM><PARAM name="wmode" value="window"></PARAM><PARAM name="allowFullScreen" value="true"></PARAM><EMBED src="http://video.rutube.ru/'.$exp_frutube[1].'" type="application/x-shockwave-flash" wmode="window" width="770" height="420" allowFullScreen="true" ></EMBED></OBJECT>';
                }
                
                //Если vimeo, То добавляем префикс src="
                if(preg_match("/src=\"http:\/\/www.vimeo.com|src=\"http:\/\/vimeo.com/i", 'src="'.$good_video_lnk)){
                    $exp_frutube = explode('com/', $good_video_lnk);
                    $result_video_lnk = '<iframe src="http://player.vimeo.com/video/'.$exp_frutube[1].'" width="770" height="420" frameborder="0"></iframe>';
                }
                
                //Если smotri, То добавляем префикс src="
                if(preg_match("/src=\"http:\/\/www.smotri.com|src=\"http:\/\/smotri.com/i", 'src="'.$good_video_lnk)){
                    $exp = explode('id=', str_replace('#', '', $good_video_lnk));
                    $result_video_lnk = '<object id="smotriComVideoPlayer'.$exp[1].'_1314557535.5897_7726" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="770" height="420"><param name="movie" value="http://pics.smotri.com/player.swf?file='.$exp[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" /><param name="allowScriptAccess" value="always" /><param name="allowFullScreen" value="true" /><param name="bgcolor" value="#ffffff" /><embed src="http://pics.smotri.com/player.swf?file='.$exp[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" quality="high" allowscriptaccess="always" allowfullscreen="true" wmode="opaque"  width="770" height="420" type="application/x-shockwave-flash"></embed></object>';
                }

 

 

 

 

И заменить на:


 

                //Если youtube то добавляем префикс src=" и составляем ответ для скрипта, для вставки в БД
                if(preg_match("/src=\"http(?:s)?:\/\/www.youtube.com|src=\"http:\/\/youtube.com/i", 'src="'.$good_video_lnk)){
                    $good_video_lnk = str_replace(array('#', '!'), '', $good_video_lnk);
                    $exp_y = explode('v=', $good_video_lnk);
                    $exp_x = explode('&', $exp_y[1]);
                    $result_video_lnk = '<iframe width="770" height="420" src="http://www.youtube.com/embed/'.$exp_x[0].'" frameborder="0" allowfullscreen></iframe>';
                }
                
                //Если rutube, То добавляем префикс value="
                if(preg_match("/value=\"http(?:s)?:\/\/www.rutube.ru|value=\"http:\/\/rutube.ru/i", 'value="'.$good_video_lnk)){
                    $exp_frutube = explode('?v=', $good_video_lnk);
                    $result_video_lnk = '<OBJECT width="770" height="420"><PARAM name="movie" value="http://video.rutube.ru/'.$exp_frutube[1].'"></PARAM><PARAM name="wmode" value="window"></PARAM><PARAM name="allowFullScreen" value="true"></PARAM><EMBED src="http://video.rutube.ru/'.$exp_frutube[1].'" type="application/x-shockwave-flash" wmode="window" width="770" height="420" allowFullScreen="true" ></EMBED></OBJECT>';
                }
                
                //Если vimeo, То добавляем префикс src="
                if(preg_match("/src=\"http(?:s)?:\/\/www.vimeo.com|src=\"http:\/\/vimeo.com/i", 'src="'.$good_video_lnk)){
                    $exp_frutube = explode('com/', $good_video_lnk);
                    $result_video_lnk = '<iframe src="http://player.vimeo.com/video/'.$exp_frutube[1].'" width="770" height="420" frameborder="0"></iframe>';
                }
                
                //Если smotri, То добавляем префикс src="
                if(preg_match("/src=\"http(?:s)?:\/\/www.smotri.com|src=\"http:\/\/smotri.com/i", 'src="'.$good_video_lnk)){
                    $exp = explode('id=', str_replace('#', '', $good_video_lnk));
                    $result_video_lnk = '<object id="smotriComVideoPlayer'.$exp[1].'_1314557535.5897_7726" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="770" height="420"><param name="movie" value="http://pics.smotri.com/player.swf?file='.$exp[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" /><param name="allowScriptAccess" value="always" /><param name="allowFullScreen" value="true" /><param name="bgcolor" value="#ffffff" /><embed src="http://pics.smotri.com/player.swf?file='.$exp[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" quality="high" allowscriptaccess="always" allowfullscreen="true" wmode="opaque"  width="770" height="420" type="application/x-shockwave-flash"></embed></object>';
                }

               

 

 

Найти:

 

        //################### Парсер . Загрузка данных о видео ###################//
        case "load":
            NoAjaxQuery();
            
            $video_lnk = $_POST['video_lnk'];
            
            if(preg_match("/http:\/\/www.youtube.com|http:\/\/youtube.com|http:\/\/rutube.ru|http:\/\/www.rutube.ru|http:\/\/www.vimeo.com|http:\/\/vimeo.com|http:\/\/smotri.com|http:\/\/www.smotri.com/i", $video_lnk)){
            
                //Открываем ссылку
                
                //Если ссылка youtube, то формируем xml ссылку для получения данных
                if(preg_match("/http:\/\/www.youtube.com|http:\/\/youtube.com/i", $video_lnk)){
                    $exp_y = explode('v=', $video_lnk);
                    $exp_x = explode('&', $exp_y[1]);
                    $sock = fopen('http://www.youtube.com/oembed?url=http://www.youtube.com/watch?v='.$exp_x[0].'&format=xml', 'r');
                } elseif(preg_match("/http:\/\/www.vimeo.com|http:\/\/vimeo.com/i", $video_lnk)){
                    $sock = fopen('http://vimeo.com/api/oembed.xml?url='.$video_lnk, 'r');
                } else {
                    $sock = fopen($video_lnk, 'r');
                }
                
                if(!$sock){
                    echo 'no_serviece';
                } else {
                    $html = '';
                    
                    //Если сервис youtube, rutube, smotri то просто выводи
                    if(preg_match("/http:\/\/www.youtube.com|http:\/\/youtube.com|http:\/\/rutube.ru|http:\/\/www.rutube.ru|http:\/\/smotri.com|http:\/\/www.smotri.com/i", $video_lnk)){
                        while(!feof($sock)){
                            $html .= fgets($sock);
                        }
                    }
                    
                    //Если сервис Vimeo, то сразу применяем кодировку utf-8, win-1251
                    if(preg_match("/http:\/\/www.vimeo.com|http:\/\/vimeo.com/i", $video_lnk)){
                        while(!feof($sock)){
                            $html .= ajax_utf8(fgets($sock));
                        }
                    }
                    
                    fclose($sock);
                    
                    //Если сервис Vimeo, то выводим без кодировки
                    $data = str_replace(array('[', ']'), array('&iqu;', '&iqu2;'), $html);
                    
                    //Если сервис youtube применяем кодировку utf-8, win-1251
                    $data_all = ajax_utf8(str_replace(array('[', ']'), array('&iqu;', '&iqu2;'), $html));

                    //Если видеосервис youtube
                    if(preg_match("/http:\/\/www.youtube.com|http:\/\/youtube.com/i", $video_lnk)){
                        preg_match_all('`(<title>[^\[]+\</title>)`si', $data_all, $parse);
                        $res_title = rn_replace(str_replace(array('<title>', '</title>'), '', $parse[1][0]));

                        //Делаем фотку для youtube
                        $parse_start = explode('v=', $video_lnk);
                        $parse_end = explode('&', $parse_start[1]);
                        $res_img = "http://img.youtube.com/vi/{$parse_end[0]}/0.jpg";
                    }
                    
                    //Если видеосервис rutube
                    if(preg_match("/http:\/\/rutube.ru|http:\/\/www.rutube.ru/i", $video_lnk)){
                        $data_rutube = iconv('koi8-u', 'windows-1251', str_replace(array('[', ']'), array('&iqu;', '&iqu2;'), $html));
                        
                        preg_match_all('`(<meta property="og:title" content="[^\[]+\<meta property="og:description")`si', $data_rutube, $parse_rutube);
                        $res_title = rn_replace(str_replace(array('<meta property="og:title" content="', '<meta property="og:description"', '" />'), '', $parse_rutube[1][0]));
                        
                        preg_match_all('`(<meta property="og:description" content="[^\[]+\<meta property="og:image")`si', $data_rutube, $parse_rutube_descr);
                        $res_descr = rn_replace(str_replace(array('<meta property="og:description" content="', '<meta property="og:image"', '" />'), '', $parse_rutube_descr[1][0]));
                        
                        $exp_rutube_img = explode('v=', $video_lnk);
                        $exp_img_dir = substr($exp_rutube_img[1], 0, 2);
                        $exp_img_dir_2 = substr($exp_rutube_img[1], 2, 2);
                        $res_img = "http://tub.rutube.ru/thumbs/{$exp_img_dir}/{$exp_img_dir_2}/{$exp_rutube_img[1]}-1.jpg";
                    }
                    
                    //Если видеосервис vimeo
                    if(preg_match("/http:\/\/www.vimeo.com|http:\/\/vimeo.com/i", $video_lnk)){
                        preg_match_all('`(<title>[^\[]+\</title>)`si', $data, $parse);
                        $res_title = str_replace(array('<title>', '</title>'), '', $parse[1][0]);
                        
                        preg_match_all('`(<thumbnail_url>[^\[]+\</thumbnail_url>)`si', $data, $parse_img);
                        $res_img = str_replace(array('<thumbnail_url>', '</thumbnail_url>'), '', $parse_img[1][0]);
                        
                        preg_match_all('`(<description>[^\[]+\</description>)`si', $data, $parse_descr);
                        $res_descr = myBrRn(rn_replace($parse_descr[1][0]));
                    }
                    
                    //Если видеосервис smotri
                    if(preg_match("/http:\/\/smotri.com|http:\/\/www.smotri.com/i", $video_lnk)){
                        $html = iconv('utf-8', 'windows-1251', $html);
                    
                        preg_match_all('`(<meta property="og:title" content="[^\[]+\<meta property="og:image")`si', $html, $parse_title);
                        $res_title = rn_replace(str_replace(array('<meta property="og:title" content="', '<meta property="og:image"', '" />'), '', $parse_title[1][0]));
                        
                        preg_match_all('`(<link rel="image_src" href="[^\[]+\<!-- Open Graf Protocol. Facebook/Yandex -->)`si', $html, $parse_img);
                        $res_img = rn_replace(str_replace(array('<link rel="image_src" href="', '<!-- Open Graf Protocol. Facebook/Yandex -->', '" />'), '', $parse_img[1][0]));
                    }

                    $result_img = $res_img;
                    $result_title = trim(strip_tags(strtr($res_title, array(''' => "'", '"' => '"', '&iqu;' => '[', '&iqu2;' => ']'))));
                    $result_descr = trim(strip_tags($res_descr));
                    
                    if($result_img && $result_title)
                        echo "{$result_img}:|:{$result_title}:|:{$result_descr}";
                    else
                        echo 'no_serviece';
                }
            } else
                echo 'no_serviece';
            
            die();
        break;

 

 

 

И заменить на:

 

        //################### Парсер . Загрузка данных о видео ###################//
        case "load":
            NoAjaxQuery();
            
            $video_lnk = $_POST['video_lnk'];
            
            if(preg_match("/http(?:s)?:\/\/www.youtube.com|http(?:s)?:\/\/youtube.com|http(?:s)?:\/\/rutube.ru|http(?:s)?:\/\/www.rutube.ru|http(?:s)?:\/\/www.vimeo.com|http(?:s)?:\/\/vimeo.com|http(?:s)?:\/\/smotri.com|http(?:s)?:\/\/www.smotri.com/i", $video_lnk)){
            
                //Открываем ссылку
                
                //Если ссылка youtube, то формируем xml ссылку для получения данных
                if(preg_match("/http(?:s)?:\/\/www.youtube.com|http(?:s)?:\/\/youtube.com/i", $video_lnk)){
                    $exp_y = explode('v=', $video_lnk);
                    $exp_x = explode('&', $exp_y[1]);
                    $sock = fopen('http://www.youtube.com/oembed?url=http://www.youtube.com/watch?v='.$exp_x[0].'&format=xml', 'r');
                } elseif(preg_match("/http(?:s)?:\/\/www.vimeo.com|http(?:s)?:\/\/vimeo.com/i", $video_lnk)){
                    $sock = fopen('http://vimeo.com/api/oembed.xml?url='.$video_lnk, 'r');
                } else {
                    $sock = fopen($video_lnk, 'r');
                }
                
                if(!$sock){
                    echo 'no_serviece';
                } else {
                    $html = '';
                    
                    //Если сервис youtube, rutube, smotri то просто выводи
                    if(preg_match("/http(?:s)?:\/\/www.youtube.com|http(?:s)?:\/\/youtube.com|http(?:s)?:\/\/rutube.ru|http(?:s)?:\/\/www.rutube.ru|http(?:s)?:\/\/smotri.com|http(?:s)?:\/\/www.smotri.com/i", $video_lnk)){
                        while(!feof($sock)){
                            $html .= fgets($sock);
                        }
                    }
                    
                    //Если сервис Vimeo, то сразу применяем кодировку utf-8, win-1251
                    if(preg_match("/http(?:s)?:\/\/www.vimeo.com|http(?:s)?:\/\/vimeo.com/i", $video_lnk)){
                        while(!feof($sock)){
                            $html .= ajax_utf8(fgets($sock));
                        }
                    }
                    
                    fclose($sock);
                    
                    //Если сервис Vimeo, то выводим без кодировки
                    $data = str_replace(array('[', ']'), array('&iqu;', '&iqu2;'), $html);
                    
                    //Если сервис youtube применяем кодировку utf-8, win-1251
                    $data_all = ajax_utf8(str_replace(array('[', ']'), array('&iqu;', '&iqu2;'), $html));

                    //Если видеосервис youtube
                    if(preg_match("/http(?:s)?:\/\/www.youtube.com|http(?:s)?:\/\/youtube.com/i", $video_lnk)){
                        preg_match_all('`(<title>[^\[]+\</title>)`si', $data_all, $parse);
                        $res_title = rn_replace(str_replace(array('<title>', '</title>'), '', $parse[1][0]));

                        //Делаем фотку для youtube
                        $parse_start = explode('v=', $video_lnk);
                        $parse_end = explode('&', $parse_start[1]);
                        $res_img = "http://img.youtube.com/vi/".$parse_end[0]."/0.jpg";
                    }
                    
                    //Если видеосервис rutube
                    if(preg_match("/http(?:s)?:\/\/rutube.ru|http(?:s)?:\/\/www.rutube.ru/i", $video_lnk)){
                        $data_rutube = iconv('koi8-u', 'windows-1251', str_replace(array('[', ']'), array('&iqu;', '&iqu2;'), $html));
                        
                        preg_match_all('`(<meta property="og:title" content="[^\[]+\<meta property="og:description")`si', $data_rutube, $parse_rutube);
                        $res_title = rn_replace(str_replace(array('<meta property="og:title" content="', '<meta property="og:description"', '" />'), '', $parse_rutube[1][0]));
                        
                        preg_match_all('`(<meta property="og:description" content="[^\[]+\<meta property="og:image")`si', $data_rutube, $parse_rutube_descr);
                        $res_descr = rn_replace(str_replace(array('<meta property="og:description" content="', '<meta property="og:image"', '" />'), '', $parse_rutube_descr[1][0]));
                        
                        $exp_rutube_img = explode('v=', $video_lnk);
                        $exp_img_dir = substr($exp_rutube_img[1], 0, 2);
                        $exp_img_dir_2 = substr($exp_rutube_img[1], 2, 2);
                        $res_img = "http://tub.rutube.ru/thumbs/{$exp_img_dir}/{$exp_img_dir_2}/{$exp_rutube_img[1]}-1.jpg";
                    }
                    
                    //Если видеосервис vimeo
                    if(preg_match("/http:\/\/www.vimeo.com|http:\/\/vimeo.com/i", $video_lnk)){
                        preg_match_all('`(<title>[^\[]+\</title>)`si', $data, $parse);
                        $res_title = str_replace(array('<title>', '</title>'), '', $parse[1][0]);
                        
                        preg_match_all('`(<thumbnail_url>[^\[]+\</thumbnail_url>)`si', $data, $parse_img);
                        $res_img = str_replace(array('<thumbnail_url>', '</thumbnail_url>'), '', $parse_img[1][0]);
                        
                        preg_match_all('`(<description>[^\[]+\</description>)`si', $data, $parse_descr);
                        $res_descr = myBrRn(rn_replace($parse_descr[1][0]));
                    }
                    
                    //Если видеосервис smotri
                    if(preg_match("/http:\/\/smotri.com|http:\/\/www.smotri.com/i", $video_lnk)){
                        $html = iconv('utf-8', 'windows-1251', $html);
                    
                        preg_match_all('`(<meta property="og:title" content="[^\[]+\<meta property="og:image")`si', $html, $parse_title);
                        $res_title = rn_replace(str_replace(array('<meta property="og:title" content="', '<meta property="og:image"', '" />'), '', $parse_title[1][0]));
                        
                        preg_match_all('`(<link rel="image_src" href="[^\[]+\<!-- Open Graf Protocol. Facebook/Yandex -->)`si', $html, $parse_img);
                        $res_img = rn_replace(str_replace(array('<link rel="image_src" href="', '<!-- Open Graf Protocol. Facebook/Yandex -->', '" />'), '', $parse_img[1][0]));
                    }

                    $result_img = $res_img;
                    $result_title = trim(strip_tags(strtr($res_title, array(''' => "'", '"' => '"', '&iqu;' => '[', '&iqu2;' => ']'))));
                    $result_descr = trim(strip_tags($res_descr));
                    
                    if($result_img && $result_title)
                        echo "{$result_img}:|:{$result_title}:|:{$result_descr}";
                    else
                        echo 'no_serviece';
                }
            } else
                echo 'no_serviece';
            
            die();
        break;
        

 

 

 

В profile.js найти
 

var pattern = new RegExp(/http:\/\/www.youtube.com|http:\/\/youtube.com|http:\/\/rutube.ru|http:\/\/www.rutube.ru|http:\/\/www.vimeo.com|http:\/\/vimeo.com|http:\/\/smotri.com|http:\/\/www.smotri.com/i);

И заменить на:

var pattern = new RegExp(/http(?:s)?:\/\/www.youtube.com|http(?:s)?:\/\/youtube.com|http(?:s)?:\/\/rutube.ru|http(?:s)?:\/\/www.rutube.ru|http(?:s)?:\/\/www.vimeo.com|http(?:s)?:\/\/vimeo.com|http(?:s)?:\/\/smotri.com|http(?:s)?:\/\/www.smotri.com/i);

Все! Кликни post-6-0-86410200-1453829540.png!

  • Upvote 9
Ссылка на комментарий
Поделиться на другие сайты

все равно почему то пишет что неправильная ссылка, может там еще что то нужно менять...

 

Хмм пробовал ctrl+f5 может в кеше засело?

Ссылка на комментарий
Поделиться на другие сайты

Хмм пробовал ctrl+f5 может в кеше засело?

Да пробовал, все равно почему то не добавляет зараза  :angry:  вот к примеру пытаюсь добавить это https://youtu.be/XEOZOZH_kgM

Ссылка на комментарий
Поделиться на другие сайты

  • 3 месяца спустя...

Ребят, подскажите, почему вий берет ссылки выборочно, не пойму механизм правильной вставки. Фикс установлен. Например, что не нравится вию в этой ссылке? https://www.youtube.com/watch?v=y3RRKjm8ORs

Изменено пользователем Aleina- show
Ссылка на комментарий
Поделиться на другие сайты

Ребят, подскажите, почему вий берет ссылки выборочно, не пойму механизм правильной вставки. Фикс установлен. Например, что не нравится вию в этой ссылке? https://www.youtube.com/watch?v=y3RRKjm8ORs

Возможно не получается с видео выдрать превью или еще че

  • Upvote 1
Ссылка на комментарий
Поделиться на другие сайты

Ребят, подскажите, почему вий берет ссылки выборочно, не пойму механизм правильной вставки. Фикс установлен. Например, что не нравится вию в этой ссылке? https://www.youtube.com/watch?v=y3RRKjm8ORs

Это vii. И этим всё сказано) :lol:

  • Upvote 1
Ссылка на комментарий
Поделиться на другие сайты

Да, странно. На то и похоже, что превьюшка не берется. Ну ладно, значит придется смириться, спасибо за консультацию, ребят.

Ссылка на комментарий
Поделиться на другие сайты

на стену не добавляет видос

а в видео сохраняет

сборка Андрея

Насколько помню то при прикреплении вроде адреса не чекает так что похоже дело не в этой фиче

Ссылка на комментарий
Поделиться на другие сайты

  • 5 лет спустя...
4 часа назад, Admin22 сказал:

Не работает, Удалите не актуально!

Удалять не будем. Но за это время с момента написания поста прошло много времени, может уже что и не работает.

Ссылка на комментарий
Поделиться на другие сайты

×
×
  • Создать...