X-Git-Url: http://git.pippins.net/embedvideo/.git/?a=blobdiff_plain;f=ItemAddEmbedVideo.inc;h=ba84786843cbfb68f30300672ff6300118328572;hb=ab7cc4b500e0cb37b9f9a9f3f19dae89f73bf76c;hp=457ad724a52fd6ae6920873c550f05d11c5f7b0c;hpb=6adbc488a2f3fb1001f4dd8497f047fb31e911b4;p=embedvideo%2F.git diff --git a/ItemAddEmbedVideo.inc b/ItemAddEmbedVideo.inc index 457ad72..ba84786 100644 --- a/ItemAddEmbedVideo.inc +++ b/ItemAddEmbedVideo.inc @@ -38,7 +38,11 @@ class ItemAddEmbedVideo extends ItemAddPlugin { if (isset($form['action']['addEmbedVideoPage'])) { $platform =& $gallery->getPlatform(); - + + if (empty($extraHeaders)) { + $extraHeaders = array('Referer' => str_replace('&', '&', $url)); + } + if(isset($form['webPage']['URL'])) { /* Load any stored/set Parameters */ @@ -75,9 +79,10 @@ class ItemAddEmbedVideo extends ItemAddPlugin { $googlePlayer="http://video.google.com/googleplayer.swf"; /* Gallery2 specific paths and variables */ - $gallery2_url = "http://www.pippins.net/gallery2"; - $gallery2_flv_thumbnail = "/modules/thumbnail/images/G2video.jpg"; - $gallery2_flv_player = "/modules/flashvideo/lib/G2flv.swf"; + $urlGenerator =& $gallery->getUrlGenerator(); + $gallery2_url = $urlGenerator->getCurrentUrlDir(); + $gallery2_flv_thumbnail = "modules/thumbnail/images/G2video.jpg"; + $gallery2_flv_player = "modules/flashvideo/lib/G2flv.swf"; /* Store the passed URL in a shorter local variable */ $url = $form['webPage']['URL']; @@ -109,9 +114,15 @@ class ItemAddEmbedVideo extends ItemAddPlugin { $feed.= "&dev_id=$dev_id&video_id=$video_id"; /* Get the youtube xml feed as a string data source */ - $xml = _getFeed($feed); + list ($successfullyCopied, $xml, $response, $headers) = + GalleryCoreApi::fetchWebPage($feed, $extraHeaders); + if (!$successfullyCopied) { + return array(GalleryCoreApi::error(ERROR_BAD_PATH,__FILE__,__LINE__, + "Unable to get video information at url: $url"),null,null); + } + - if($debugOutput) { + if(!strcmp($debugOutput,"true")) { print "$xml"; } @@ -161,7 +172,12 @@ class ItemAddEmbedVideo extends ItemAddPlugin { } /* Grab the contents of the webpage used to display the video on video.google.com */ - $contents=file_get_contents($url); + list ($successfullyCopied, $contents, $response, $headers) = + GalleryCoreApi::fetchWebPage($url, $extraHeaders); + if (!$successfullyCopied) { + return array(GalleryCoreApi::error(ERROR_BAD_PATH,__FILE__,__LINE__, + "Unable to get video information at url: $url"),null,null); + } /* Extract the summary from the webpage contents */ preg_match('//i', @@ -183,7 +199,7 @@ class ItemAddEmbedVideo extends ItemAddPlugin { $description = ' '; + $description.= 'src="'.$googlePlayer.'?docId='.$doc_id.'"> '; $description.= ''; $description.= "
$summary"; @@ -213,9 +229,6 @@ class ItemAddEmbedVideo extends ItemAddPlugin { * Check to make sure the URL to the remote flv file is valid * (That the file exists at the URL given) */ - if (empty($extraHeaders)) { - $extraHeaders = array('Referer' => str_replace('&', '&', $url)); - } list ($successfullyCopied, $response, $headers) = GalleryCoreApi::fetchWebPage($url, $extraHeaders); if (!$successfullyCopied) { @@ -228,7 +241,7 @@ class ItemAddEmbedVideo extends ItemAddPlugin { * This reference will be embedded using the G2 internal player, * or an external player if provided by the user. */ - if(!$useInternalFlvPlayer) { + if(!strcmp($useInternalFlvPlayer,"false")) { /* * The user has indicated they want to use an external flv player @@ -321,14 +334,11 @@ class ItemAddEmbedVideo extends ItemAddPlugin { $tmpFile = $platform->tempnam($tmpDir, 'add'); $tmpFile.= ".jpg"; - if($debugOutput) { + if(!strcmp($debugOutput,"true")) { print "thumbnail: $thumbnail
"; } /* Fetch the thumbnail and save it to a local file */ - if (empty($extraHeaders)) { - $extraHeaders = array('Referer' => str_replace('&', '&', $url)); - } list ($successfullyCopied, $response, $headers) = GalleryCoreApi::fetchWebFile($thumbnail, $tmpFile, $extraHeaders); if (!$successfullyCopied) { @@ -347,7 +357,7 @@ class ItemAddEmbedVideo extends ItemAddPlugin { $fileName = preg_replace("/&#\d+;/","",$fileName); /* General debug output */ - if($debugOutput) { + if(!strcmp($debugOutput,"true")) { print "

"; print "\n".$summary."

"; print "

$description

"; @@ -411,24 +421,6 @@ class ItemAddEmbedVideo extends ItemAddPlugin { return array(null, $module->translate('Embed Video')); } - - - /** - * ItemAddEmbedVideo::_getFeed - */ - function _getFeed($feed) { - - /* Open and return Feed with cURL for parsing */ - $ch = curl_init(); - $timeout = 0; - curl_setopt ($ch, CURLOPT_URL, $feed); - curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); - curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout); - $xml = curl_exec($ch); - curl_close($ch); - - return $xml; - } } ?>