Improved error message when URL pattern doesn't match supported types.
authorAlan J. Pippin <ajp@server.pippins.net>
Wed, 24 Sep 2008 05:00:54 +0000 (23:00 -0600)
committerAlan J. Pippin <ajp@pippins.net>
Wed, 24 Sep 2008 05:00:54 +0000 (23:00 -0600)
Loosened URL pattern matching, dropping "www." and ".com" expectations.
Fixed stickam video embedding parser.
Realized new vimeo webpage format makes them impossible to embed now.

ItemAddEmbedVideo.inc
module.inc
templates/ItemAddEmbedVideo.tpl

index 6fd4281c91b406e317207b9b5c02480cb30b19d5..d598ee2c1d09dd501eff2dd03430aa8a0eaa4f07 100644 (file)
@@ -118,7 +118,7 @@ class ItemAddEmbedVideo extends ItemAddPlugin {
           /* Store other string constants we'll use later */
          
           /* youtube */
-          $youtubeUrlPattern="youtube.com";
+          $youtubeUrlPattern="youtube";
           $youtubeApiUrl="http://gdata.youtube.com/feeds/api/";
           $youtubeThumbnailUrl="http://img.youtube.com/vi/";
           /* We can't extract the server size from youtube */
@@ -126,39 +126,39 @@ class ItemAddEmbedVideo extends ItemAddPlugin {
           $youtubeHeight="350";
 
           /* google */
-          $googleUrlPattern="video.google.com";
+          $googleUrlPattern="video.google";
           $googlePlayer="http://video.google.com/googleplayer.swf";
           /* We can't extract the server size from google video */
           $googleWidth="400";
           $googleHeight="326";
           
           /* yahoo */
-          $yahooUrlPattern="video.yahoo.com";
+          $yahooUrlPattern="video.yahoo";
           $yahooThumbnailUrl="http://thmg01.video.search.yahoo.com/image/";
           
           /* metacafe */
-          $metacafeUrlPattern="metacafe.com";
+          $metacafeUrlPattern="metacafe";
           $metacafeThumbnailUrl="http://www.metacafe.com/thumb/";
 
           /* revver */
-          $revverUrlPattern="revver.com";
+          $revverUrlPattern="revver";
           $revverThumbnailUrl="http://frame.revver.com/frame/120x90/";
 
           /* dailymotion */
-          $dailymotionUrlPattern="dailymotion.com";
+          $dailymotionUrlPattern="dailymotion";
           $dailymotionThumbnailUrl="http://www.dailymotion.com/thumbnail/160x120/video/";
 
           /* divshare */
-          $divshareUrlPattern="divshare.com";
+          $divshareUrlPattern="divshare";
           $divshareThumbnailUrl="http://www.divshare.com/direct/video_thumb/";
 
           /* stickam */
-          $stickamUrlPattern="stickam.com";
+          $stickamUrlPattern="stickam";
           $stickamThumbnailUrl="http://static.stickam.com/";
 
           /* myspace */
-          $myspaceUrlPattern="vids.myspace.com";
-          $myspaceUrlPattern2="myspacetv.com";
+          $myspaceUrlPattern="vids.myspace";
+          $myspaceUrlPattern2="myspacetv";
           $myspaceThumbnailUrl="http://mediaservices.myspace.com/services/rss.ashx?type=video&videoID=";
 
           /* vimeo */
@@ -372,7 +372,7 @@ class ItemAddEmbedVideo extends ItemAddPlugin {
                                "Unable to extract vid id from url: $url"),null,null);
               }
 
-              /* Grab the contents of the webpage used to display the video on video.google.com */
+              /* Grab the contents of the webpage used to display the video */
               list ($successfullyCopied, $contents, $response, $headers) =
                 GalleryCoreApi::fetchWebPage($url, $extraHeaders);
               if (!$successfullyCopied) {
@@ -422,7 +422,7 @@ class ItemAddEmbedVideo extends ItemAddPlugin {
                                "Unable to extract item id from url: $url"),null,null);
               }
 
-              /* Grab the contents of the webpage used to display the video on video.google.com */
+              /* Grab the contents of the webpage used to display the video */
               list ($successfullyCopied, $contents, $response, $headers) =
                 GalleryCoreApi::fetchWebPage($url, $extraHeaders);
               if (!$successfullyCopied) {
@@ -475,7 +475,7 @@ class ItemAddEmbedVideo extends ItemAddPlugin {
                                "Unable to extract item id from url: $url"),null,null);
               }
 
-              /* Grab the contents of the webpage used to display the video on video.google.com */
+              /* Grab the contents of the webpage used to display the video */
               list ($successfullyCopied, $contents, $response, $headers) =
                 GalleryCoreApi::fetchWebPage($url, $extraHeaders);
               if (!$successfullyCopied) {
@@ -533,7 +533,7 @@ class ItemAddEmbedVideo extends ItemAddPlugin {
                                "Unable to extract item id from url: $url"),null,null);
               }
 
-              /* Grab the contents of the webpage used to display the video on video.google.com */
+              /* Grab the contents of the webpage used to display the video */
               list ($successfullyCopied, $contents, $response, $headers) =
                 GalleryCoreApi::fetchWebPage($url, $extraHeaders);
               if (!$successfullyCopied) {
@@ -583,7 +583,7 @@ class ItemAddEmbedVideo extends ItemAddPlugin {
                                "Unable to extract item id from url: $url"),null,null);
               }
 
-              /* Grab the contents of the webpage used to display the video on video.google.com */
+              /* Grab the contents of the webpage used to display the video */
               list ($successfullyCopied, $contents, $response, $headers) =
                 GalleryCoreApi::fetchWebPage($url, $extraHeaders);
               if (!$successfullyCopied) {
@@ -632,7 +632,7 @@ class ItemAddEmbedVideo extends ItemAddPlugin {
                                "Unable to extract item id from url: $url"),null,null);
               }
 
-              /* Grab the contents of the webpage used to display the video on video.google.com */
+              /* Grab the contents of the webpage used to display the video */
               $url=preg_replace("/&amp;/","&",$url);
               list ($successfullyCopied, $contents, $response, $headers) =
                 GalleryCoreApi::fetchWebPage($url, $extraHeaders);
@@ -660,7 +660,7 @@ class ItemAddEmbedVideo extends ItemAddPlugin {
               }
 
               /* Format the description to hold a reference to the embedded video */
-              if(preg_match('/input type.+?'.$item_id.'.+?value="(.+?)"/', $contents, $matches)) { 
+              if(preg_match('/readonly value="(.+?)"/', $contents, $matches)) { 
                 $description=$matches[1];
                 $description=preg_replace("/&quot;/","'",$description);
                 $description=preg_replace("/&lt;/","<",$description);
@@ -690,7 +690,7 @@ class ItemAddEmbedVideo extends ItemAddPlugin {
                                "Unable to extract video id from url: $url"),null,null);
               }
 
-              /* Grab the contents of the webpage used to display the video on video.google.com */
+              /* Grab the contents of the webpage used to display the video */
               list ($successfullyCopied, $contents, $response, $headers) =
                 GalleryCoreApi::fetchWebPage($url, $extraHeaders);
               if (!$successfullyCopied) {
@@ -760,7 +760,7 @@ class ItemAddEmbedVideo extends ItemAddPlugin {
                                "Unable to extract video id from url: $url"),null,null);
               }
 
-              /* Grab the contents of the webpage used to display the video on video.google.com */
+              /* Grab the contents of the webpage used to display the video */
               list ($successfullyCopied, $contents, $response, $headers) =
                 GalleryCoreApi::fetchWebPage($url, $extraHeaders);
               if (!$successfullyCopied) {
@@ -1023,7 +1023,7 @@ class ItemAddEmbedVideo extends ItemAddPlugin {
            */   
           if($unsupported_url == 1) {
               return array(GalleryCoreApi::error(ERROR_UNSUPPORTED_FILE_TYPE,__FILE__,__LINE__,
-                           "Unable to embed video from: $url"),null,null);
+                           "The URL you have supplied is unsupported (check the list of supported URLs, they must match exactly). You tried to embed a video from this url: $url"),null,null);
           }
           
 
index 7754d2d9473124da7ccbcebb8529e90e229a655d..d8fd9d22272441ad5d129dcd4d2fc602b36260b4 100644 (file)
@@ -33,7 +33,7 @@ class EmbedVideoModule extends GalleryModule {
        $this->setId('embedvideo');
        $this->setName($gallery->i18n('Embed Video'));
        $this->setDescription($gallery->i18n('Add embedded videos from the web'));
-       $this->setVersion('1.1.1');
+       $this->setVersion('1.1.2');
        $this->setGroup('import', $gallery->i18n('Import'));
        $this->setCallbacks('getSiteAdminViews');
        $this->setRequiredCoreApi(array(7, 3));
index 1ea280732b4bd3568f1a6c009158bd6d67a756a9..43d0e735b860a27026fc9bac766f3b9b3faad246 100644 (file)
@@ -31,7 +31,6 @@
     <b>Stickam:</b> http://www.stickham.com/editMediaComment.do?method=load&mId=xxxxxxxxx<br>
     <b>Myspace1:</b> http://vids.myspace.com/index.cfm?fuseaction=vids.individual&VideoID=xxxxxxxx<br>
     <b>Myspace2:</b> http://myspacetv.com/index.cfm?fuseaction=vids.individual&videoid=xxxxxxxx<br>
-    <b>Vimeo:</b> http://www.vimeo.com/xxxxxx<br>
     <b>Generic:</b> Any webpage with an '&lt;object ... &lt;embed ...' style video on its page<br>
     <br>
     <b><u>Supported File Types:</u></b><br>