X-Git-Url: http://git.pippins.net/embedvideo/.git/%27%20%20%20%20.%20%24GLOBALS%5B%27phpgw%27%5D-%3Elink%28%27inc/jquery/jquery.tablesorter.css%27%29.%27?a=blobdiff_plain;f=ItemAddEmbedVideo.inc;h=0e277a490427e598fda49ef8a32c2473ca12118b;hb=64b39254630e685dc3a8b6c9f2b8bda3b27e88f6;hp=69ee24dbd4ef0740c728f01976db142b6f1e53b9;hpb=653677bb9ae1936fab463406830f01443a2e674f;p=embedvideo%2F.git diff --git a/ItemAddEmbedVideo.inc b/ItemAddEmbedVideo.inc index 69ee24d..0e277a4 100644 --- a/ItemAddEmbedVideo.inc +++ b/ItemAddEmbedVideo.inc @@ -34,7 +34,7 @@ class ItemAddEmbedVideo extends ItemAddPlugin { * @see ItemAddPlugin::handleRequest */ function handleRequest($form, &$item) { - global $gallery; + global $gallery, $url; $status = $error = array(); @@ -161,6 +161,9 @@ class ItemAddEmbedVideo extends ItemAddPlugin { $myspaceUrlPattern="vids.myspace.com"; $myspaceUrlPattern2="myspacetv.com"; $myspaceThumbnailUrl="http://mediaservices.myspace.com/services/rss.ashx?type=video&videoID="; + + /* vimeo */ + $vimeoUrlPattern="www.vimeo.com"; /* Gallery2 specific paths and variables */ $urlGenerator =& $gallery->getUrlGenerator(); @@ -178,14 +181,33 @@ class ItemAddEmbedVideo extends ItemAddPlugin { ***************************** */ if(preg_match("/$youtubeUrlPattern/",$url)) { - + /* Make sure we can find a video_id in the URL */ - if(preg_match("/watch\?v=(.*)/",$url,$matches)) { + $extra_params = ""; + if(preg_match("/watch\?v=(.*?)(&\S+=\S+)/",$url,$matches)) { + $video_id = $matches[1]; + $extra_params = $matches[2]; + } else if (preg_match("/watch\?v=(.*)/",$url,$matches)) { $video_id = $matches[1]; } else { return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER,__FILE__,__LINE__, "Unable to extract video id from url: $url"),null,null); } + + /* If extra params were given, handle them here */ + if(strcmp($extra_params,"")) { + /* Handle the HD format information */ + if(preg_match("/fmt=(\d+)/",$extra_params,$matches)) { + $extra_params="&ap=%2526fmt%3D".$matches[1]; + } + } + + if(!strcmp($debugOutput,"true")) { + print "